作者/来源:小睿 发布时间:2019-12-11
Json是JavaScript Object Notation的简称,是一种轻量级的数据交换格式,方便阅读与编写,易于机器解析与生成,有效提升网络传输效率。
JSON 是存储和交换文本信息的语法,类似 XML。JSON 比 XML 更小、更快,更易解析。
Json如何解析字符串?
下面介绍三种json解析字符串的方法。
第一种方法:evel();
特点:安全性底,不建议使用,单个JSON对象时要加括号,JSON数组就不需要了
示例:
var evajson =eval('('+str+')');
var evajsarr = eval(t2);
转换后,再使用Object.prototype.toString.call() 来检测转换后的数据类型
console.log(Object.prototype.toString.call(evajso))//[object Object]
console.log(Object.prototype.toString.call(evajsarr))//[object Array]
第二种:new Function()
注意:函数要有返回,所以要加“return”;
示例:
var fnjson = new Function("return"+str)();
var fnjsonArr = new Function("return"+t2)();
转换后,再使用Object.prototype.toString.call() 来检测转换后的数据类型
console.log(Object.prototype.toString.call(fnjson ))//[object Object]
console.log(Object.prototype.toString.call(fnjsonArr ))//[object Array]
第三种:JSON.parse()
特点:主流,兼容性好,推荐
示例:
var parjson = JSON.parse(str);
var parjson = JSON.parse(t2);
检测转后的数据类型
console.log(Object.prototype.toString.call(parjson ))//[object Object]
console.log(Object.prototype.toString.call(parjson ))//[object Array]