如果我在JS中定义了一个对象:
var j={"name":"binchen"};
如何将对象转换为JSON?输出字符串应该是:
'{"name":"binchen"}'
如果我在JS中定义了一个对象:
var j={"name":"binchen"};
如何将对象转换为JSON?输出字符串应该是:
'{"name":"binchen"}'
当前回答
看看Thomas Frank更新的/更好的方法:
JSON stringify重访
2008年5月17日更新:小型消毒剂 添加到toobject -方法中。现在 toObject()不会eval()该字符串 如果它发现任何恶意代码 它。为了更安全:不要设置 将includeFunctions标志设为true。 JSON概念之父Douglas Crockford为JavaScript编写了最早的stringfier之一。后来Steve Yen在Trim Path写了一个很好的改进版本,我用了一段时间。我想和大家分享的是我对史蒂夫版本的修改。基本上他们源于我的愿望,使stringifier: 处理和恢复循环引用 包含函数/方法的JavaScript代码(作为一个选项) 排除object中的对象成员。原型(如果需要的话)。
其他回答
JSON。stringify将Javascript对象转换为JSON文本,并将该JSON文本存储在字符串中。
该转换是对象到字符串的转换
JSON。parse将JSON文本字符串转换为Javascript对象。
该转换是一个字符串到对象的转换
var j={"name":"binchen"};
使它成为一个JSON字符串下面可以使用。
JSON.stringify({"key":"value"});
JSON.stringify({"name":"binchen"});
要了解更多信息,您可以参考下面的链接。
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
当前所有浏览器都内置了原生JSON支持。所以只要你不是在处理像IE6/7这样的史前浏览器,你就可以很容易地做到这一点:
Var j = { “名称”:“binchen” }; console.log (JSON.stringify (j));
我有问题与stringify运行内存不足和其他解决方案似乎不工作(至少我不能让他们工作),这是当我偶然发现这个线程。多亏了Rohit Kumar,我才迭代了我非常大的JSON对象,以防止它崩溃
var j = MyObject;
var myObjectStringify = "{\"MyObject\":[";
var last = j.length
var count = 0;
for (x in j) {
MyObjectStringify += JSON.stringify(j[x]);
count++;
if (count < last)
MyObjectStringify += ",";
}
MyObjectStringify += "]}";
MyObjectStringify会给你你的字符串表示(就像在这个线程中提到的其他时间),除非你有一个大对象,这也应该工作-只是确保你构建它来满足你的需要-我需要它有一个名称而不是数组
您可以使用JSON.stringify()方法将JSON对象转换为字符串。
var j={"name":"binchen"};
JSON.stringify(j)
对于反向处理,您可以使用JSON.parse()方法将JSON字符串转换为JSON对象。
JSON。stringify(j, null, 4)会给你美化的JSON,以防你也需要美化
第二个参数是replacer。它可以用作过滤器,你可以过滤掉特定的键值时,字符串化。如果设置为空,它将返回所有键值对