如果我在JS中定义了一个对象:
var j={"name":"binchen"};
如何将对象转换为JSON?输出字符串应该是:
'{"name":"binchen"}'
如果我在JS中定义了一个对象:
var j={"name":"binchen"};
如何将对象转换为JSON?输出字符串应该是:
'{"name":"binchen"}'
当前回答
使用本机函数JSON.stringify()
let userJson = {
name : 'Richard'
}
let userJsonString = JSON.stringify(userJson)
其他回答
看看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()来做到这一点
当前所有浏览器都内置了原生JSON支持。所以只要你不是在处理像IE6/7这样的史前浏览器,你就可以很容易地做到这一点:
Var j = { “名称”:“binchen” }; console.log (JSON.stringify (j));
只使用JSON。Stringify来做这样的转换-但是记住,具有未定义值的字段将不会包含在json中
var j={“name”:“binchen”, “remember”:undefined, “age”: null }; var s=JSON.stringify(j); 控制台.log(s);
记住输出json中的“消失”字段
如果你使用的是AngularJS, 'json'过滤器可以做到:
<span>{{someObject | json}}</span>