JSON.parse()与eval()
一、前言
和 XML 一样,JSON 也是基于纯文本的数据格式。由于 JSON 天生是为 JavaScript 准备的,因此,JSON 的数据格式非常简单,您可以用 JSON 传输一个简单的 String,Number,Boolean,也可以传输一个数组,或者一个复杂的 Object 对象。
二、包含json对象的字符串
基本格式:var jsonData=‘{"data1":"Hello,","data2":"world!"}‘;
三、json的解析方法
(1)使用JSON.parse()
<script>
var str = ‘{"name":"party","age":"23"}‘;
var ob=JSON.parse(str);
alert(ob.name);
alert(ob.age);
var str = ‘["name","age"]‘;
var ob=JSON.parse(str);
alert(ob[0]);
alert(ob[1]);
</script>
(2)使用eval()
var str = ‘{"name":"party","age":"23"}‘;
var ob=eval("("+str+")");
alert(ob.name);
alert(ob.age);
注意:JSON.parse()可以解析json格式的数据,并且会对要解析的字符串进行格式检查,如果格式不正确则不进行解析,而eval()可以解析任何字符串,特别是执行第三方的JSON数据(其中可能包含恶意代码),使用eval是很危险的,而且容易发生内存泄露,所以在代码中尽可能使用JSON.parse()方法解析字符串。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。