[英]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.