我有JSON数组字符串
[
{ "ok": true },
{ "ok": true },
{ "ok": true },
{ "ok": true },
{ "ok": true }
]
我想将JSON数组字符串转换为JSON对象字符串 像
{"ok":true}
{"ok":true}
{"ok":true}
{"ok":true}
{"ok":true}
我使用了jsonarraystring.replace(/,{/g , "\n{")
,但这不安全。
javascript中是否有任何库可以处理这个问题?
答案 0 :(得分:3)
[
{ "ok": true },
{ "ok": true },
{ "ok": true },
{ "ok": true },
{ "ok": true }
].map(JSON.stringify).join("\n")
答案 1 :(得分:1)
@Shanimal的回答是正确的。
您可以通过以下方式测试代码:
(function() {
var jsonarraystring =
[
{ "ok": true },
{ "ok": true },
{ "ok": true },
{ "ok": true },
{ "ok": true }
];
console.log(jsonarraystring.map(JSON.stringify).join("\n"));
})();

答案 2 :(得分:0)
如果您正在寻找其他选项,可以使用 $。parseJSON()
function () {
var str = '[{ "ok": true },{ "ok": false },{ "ok": true }]';
var jsonObjArray = $.parseJSON(str);
for(var i=0;i<jsonObjArray.length;i++){
alert(jsonObjArray[i]["ok"]);
}
}