如何准备一个可解析的json对象数组?

时间:2016-09-05 13:51:10

标签: javascript jquery json

var cdrType = $('.switchSelect').val();
console.log(cdrDisplayFields);//[Object, Object, Object, Object, Object, Object]
var a = '{"cdrColumnFields":'+cdrDisplayFields[0]+'}';
console.log(a); //{"cdrColumnFields":[object Object]}
console.log(cdrDisplayFields[0]); //Object {cdrName: "EQUIPMENTID", type: "date", index: 0}
console.log($.parseJSON(a)); //VM2901:1 Uncaught SyntaxError: Unexpected token o in JSON at position 20

如果我有一个对象数组,如何准备有效的json对象数组。

1 个答案:

答案 0 :(得分:3)

您无法将对象附加到字符串。您需要JSON.stringify() cdrDisplayFields[0]对象:

var a = '{"cdrColumnFields":' + JSON.stringify(cdrDisplayFields[0]) + '}';

请注意,很多更好的选择是自己创建一个对象,然后将它们全部串联起来,如下所示:

var a = JSON.stringify({ cdrColumnFields: cdrDisplayFields[0] });

另请注意,将上述对象转换为JSON是多余的,如果您要做的只是$.parseJSON它再次返回到对象。