javascript中的多行变量
我试图用数组中的一些数据创建这个javascript变量,但我无法找到正确的语法来实现这一点javascript中的多行变量,javascript,Javascript,我试图用数组中的一些数据创建这个javascript变量,但我无法找到正确的语法来实现这一点 certifications will be "Win7,Win8,PDI" var myArray = certifications.split(","); var data = "[{" + for (var i in myArray) " "id":i,"text":myArray[i]}, " + "}]"; 我希望让我的数据变量看起来像:
certifications will be "Win7,Win8,PDI"
var myArray = certifications.split(",");
var data = "[{" +
for (var i in myArray)
" "id":i,"text":myArray[i]}, " +
"}]";
我希望让我的数据变量看起来像:
var data = "[{"id":0,"text":Win7},{"id":1,"text":Win8},{"id":2,"text":PDI}]";
试试这个:
var data = JSON.stringify(certifications.split(",").map(function(value, index) {
return {
id: index,
text: value
};
}));
也许+=就是你想要的:
var certifications = "Win7,Win8,PDI";
var myArray = certifications.split(",");
var data = "[{";
for (var i in myArray) {
data += " " +
"id" +":"+i+","+
"text" + ":"+myArray[i]+"}, ";
}
data += "}]";
不要尝试创建对象文字字符串。只需创建真实的对象!不,没有。你为什么要这么做?如果要创建JSON字符串,请在真实对象和数组上使用
JSON.stringify()。谢谢bergiYes,这可能会起作用,但您需要确保i
和myArray[i]
正确escaped@friedi有一个更好的解决方案。希望他能使用它,而不是自己制作JSON。