ajax解析json

2017-06-23  本文已影响0人  stars甜

1:eval()

eval()方法解析的时候不会判断字符串是否合法 js方法也会被执行:例如:

var jsonObj = eval('('+ jsonDate +')')

console.log( jsonObj.age );

  //会先执行“alert”输出“hello”  然后才输出 23

换“JSON.parse();”方法:

var jsonDate ='{ "name":alert("hello"),"age":23 }'

var jsonObj = JSON.parse( jsonDate );

cosole.log( jsonobj.age )

// 报错  这个错误告诉我们这个字符串是不合法的

2:JSON.parse()

var jsonDate ='{ "name":"郝甜甜","age":20 }'

var jsonObj = eval('('+ jsonDate +')');

var jsonObj = JSON.parse( jsonDate );

console.log(jsonObj.name );   都输出郝甜甜

3:注意:

上面测试时一直用单引号把包在花括号外面的标注了起来,这对引号是很关键却又是常常被忽略的,因为“eval()   JSON.parser();” 这两个方法的参数只接受字符串,也就是说只能解析字符串!!

上一篇下一篇

猜你喜欢

热点阅读