解析Json字符串的三种⽅法⽇常常⽤
在很多时候,我们的需要将类似 json 格式的字符串数据转为json,
下⾯将介绍⽇常中使⽤的三种解析json字符串的⽅法
 1.⾸先,我们先看⼀下什么是 json 格式字符串数据,很简单,就是 json 字符串化,在json 最外加单/双号变为字符串数据 
var str='{"name":"Mike","sex":"⼥","age":"29"}';
var t2="[{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";
2.我们⽤String.call() 来检测数据类型
console.log(String.call(str));//[object String]
console.log(String.call(t2));//[object String]
第⼀种⽅法:evel();
 特点:安全性底,不建议使⽤,单个JSON对象时要加括号,JSON数组就不需要了
⽰例:
var evajson =eval('('+str+')');
var evajsarr = eval(t2);
转换后,再使⽤String.call() 来检测转换后的数据类型
console.log(String.call(evajso))//[object Object]
console.log(String.call(evajsarr))//[object Array]
第⼆种:new Function()
注意:函数要有返回,所以要加“return”;
⽰例:
var fnjson = new Function("return"+str)();
var fnjsonArr = new Function("return"+t2)();
转换后,再使⽤String.call() 来检测转换后的数据类型
console.log(String.call(fnjson ))//[object Object]
console.log(String.call(fnjsonArr ))//[object Array]
第三种:JSON.parse()
特点:主流,兼容性好,推荐
⽰例:
var parjson = JSON.parse(str);字符串转数组用什么方法
var parjson = JSON.parse(t2);
检测转后的数据类型
console.log(String.call(parjson ))//[object Object]
console.log(String.call(parjson ))//[object Array]
总结
以上所述是⼩编给⼤家介绍的解析Json字符串的三种⽅法⽇常常⽤,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。