如果我在JS中定义了一个对象:
var j={"name":"binchen"};
如何将对象转换为JSON?输出字符串应该是:
'{"name":"binchen"}'
如果我在JS中定义了一个对象:
var j={"name":"binchen"};
如何将对象转换为JSON?输出字符串应该是:
'{"name":"binchen"}'
当前回答
最流行的方式如下:
var obj ={名字:“马丁”,年龄:30岁,国家:“美国”}; //将JS对象转换为JSON字符串 var json = json .stringify(obj); console.log (json);
其他回答
如果你使用的是AngularJS, 'json'过滤器可以做到:
<span>{{someObject | json}}</span>
使用本机函数JSON.stringify()
let userJson = {
name : 'Richard'
}
let userJsonString = JSON.stringify(userJson)
我有问题与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会给你你的字符串表示(就像在这个线程中提到的其他时间),除非你有一个大对象,这也应该工作-只是确保你构建它来满足你的需要-我需要它有一个名称而不是数组
这是自定义的,直到我们使用stringify方法
var j={"name":"binchen","class":"awesome"};
var dq='"';
var json="{";
var last=Object.keys(j).length;
var count=0;
for(x in j)
{
json += dq+x+dq+":"+dq+j[x]+dq;
count++;
if(count<last)
json +=",";
}
json+="}";
document.write(json);
输出
{"name":"binchen","class":"awesome"}
住http://jsfiddle.net/mailmerohit5/y78zum6v/
转换STR => obj
const onePlusStr = '[{“品牌”:“oneplus”},{“模型”:“7 t”}]”;
const onePLusObj = JSON.parse(onePlusStr);
转换obj => STR
const onePLusObjToStr = JSON.stringify(onePlusStr);
JS中JSON解析的参考: JSON.parse():单击 JSON.stringify():单击