繁体   English   中英

为什么JSON.parse会删除双引号?

[英]Why JSON.parse removes double quotes?

有简单的JS代码:

var str = '[[[0,123,"John Doe"]],[[0,189,"Jane Doe, Mike Smith"]]]';
var obj = JSON.parse(str);
document.writeln(obj[1]);

在这里测试一下

为什么删除双引号? 如何强制JS不删除双引号?


或者......我如何将这个JSON转换为数组,将每个元素分开?

例如: obj[1][2] = "Jane Doe, Mike Smith"

如果要打印JSON,请将其转换回JSON:

document.writeln(JSON.stringify(obj[1]));

通过使用JSON.parse ,您可以将JSON转换为真正的JavaScript数组。 obj没有JSON,因此没有引号。

如果你想操纵数组,你可以像任何其他数组一样操作:

var str = '[[[0,123,"John Doe"]],[[0,189,"Jane Doe, Mike Smith"]]]';
var obj = JSON.parse(str);
obj[0][0][2] = "John Smith";

然后如果你想要你的报价,你将不得不用JSON.stringify将它转换回JSON。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM