您的位置:首页 > Web前端 > JavaScript

JSON中 key 动态设置 以及JSON.parse 和JSON.stringify()的区别

2016-12-29 15:38 561 查看
var user_info_json = [];
user_info_json[user_info_json.length] = eval('('+ '{"'+ id +'": "'+ value +'"}' +')');
JSON.stringify(user_info_json)


先转成字符串,然后使用eval()格式化,然后在把json对象格式化成字符串

分析 : json = {key:values}; 的结果是{"key":values}不满足要求,而json还不支持

json = {"" + key:values};这种格式,所以,想直接把key作为参数传入的思路是不行的

所以只能先写一个字符串,然后格式化成 key :value 的形式

之所以会遇到这个问题是因为我传数据库的时候

[{"mobile":"15915845461"},{"name":"红"},{"388":"某些"}] 我的格式是这样的

所以他key是动态的

另外在实践中发现了 JSON.parse()和JSON.stringify()  这两者的区别也记录下

parse用于从一个字符串中解析出json对象,如var str = '{"name":"huangxiaojian","age":"23"}'

结果:

JSON.parse(str)

Object

mobile: "15224545246"

name: "huangxiaojian"

__proto__: Object

注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。

stringify()用于从一个对象解析出字符串,如

var a = {a:2,b:3}

结果:JSON.stringify(a)

"{"a":2,"b":3}"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息