[英]convert comma seperated values into specified json format
我正在使用一個名為taggle.js的插件來管理標簽,我正在使用可用標簽,它會在頁面加載時顯示一些標簽,我提出了ajax請求並檢索了數據,並且數據以逗號分隔,例如
OE,SLOTTED AND CROSSED DRILLED,JUST SLOTTED
現在插件正在使用以下格式
obj_buttons=['OE','SLOTTED AND CROSSED DRILLED','JUST SLOTTED'];
我如何將這個逗號分隔的字符串轉換為指定的格式,我正在使用此代碼
var mystring=data.buttons;//values received from ajax in format OE,SLOTTED AND CROSSED DRILLED,JUST SLOTTED
var json = [];
var to = mystring;
var toSplit = to.split(",");
for (var i = 0; i < toSplit.length; i++) {
json.push(toSplit[i]);
}
alert(json);
}
任何形式的幫助將不勝感激
只需使用以下方法, 將您的字符串傳遞給此函數,它將輸出您需要的json。
function commatoJson(obj_buttons){
var lines= obj_buttons.split("\n");
var result = [];
var headers=lines[0].split(",");
for(var i=1;i<lines.length;i++){
var obj = {};
var currentline=lines[i].split(",");
for(var j=0;j<headers.length;j++){
obj[headers[j]] = currentline[j];
}
result.push(obj);
}
//return result; //JavaScript object
return JSON.stringify(result); //JSON
}
請參閱此以獲取更多信息https://gist.github.com/iwek/7154578
對於沒有鍵/值對的簡單字符串
alert(commatoJson("OE,SLOTTED AND CROSSED DRILLED,JUST SLOTTED"));
function commatoJson(obj_buttons){
var result = [];
var headers=obj_buttons.split(",");
for(var j=0;j<headers.length;j++){
result.push(headers[j]);
}
//return result; //JavaScript object
return JSON.stringify(result); //JSON
}
似乎您正在嘗試將對象轉換為字符串,有一個stringify函數可以實現它:
var mystring = "OE,SLOTTED AND CROSSED DRILLED,JUST SLOTTED";
var json = [];
var to = mystring;
var toSplit = to.split(",");
for (var i = 0; i < toSplit.length; i++) {
json.push(toSplit[i]);
}
var result = JSON.stringify(json);
alert(result);
要將單引號替換為雙引號,可以使用regex替換:
json = JSON.stringify(json);
json = json.replace(/(\")/g, "'");
alert(json);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.