JSON是什么,做什么用的

JSON是用来传输数据的字符串,涉及到怎么转成数据
把js转化成JSON字符串: stringify() 
把JSON的字符串转化成js:  parse() 和 eval_r()的区别
parse和eval的区别:
eval: 可以解析任何字符串变成js   (会把植入的木马也给解析了)
parse:只能解析JSON形式的字符串变成js 并且字符串中的属性要严格的加上引号 (安全性要高一些)

// eval:把字符串转成json 的使用方法 
var str=‘function show(){alert(123)}‘         //字符串
eval_r(str);                                                      //将字符串变成js
alert(typeof show);                                    //可以检测到show已经是一个function了。
show();                                                       //可以执行js
 
//parse 把字符串转成json  的使用
var str=‘function show(){alert(123)}         //字符串
JSON.parse(str); 
show();            //为什么不弹出来了?这就是parse和eval的区别 parse:只能解析JSON形式的字符串变成js
 
var str1=‘{"name":"hello"}‘;//每个属性都要加引号,parse是用严格性的
var json = JSON.parse(str1);//将字符串变成js了
//alert(json.name)
 
 
 
 
 
//深拷贝 递归
//stringify :将js解析为严格形式JSON的字符串
var a={name:{age:100}};//js
var str=JSON.stringify(a);//用JSON的stringify属性将对象a变成了字符串
//alert(str)//字符串
var b=JSON.parse(str);//又将字符串变成了对象
b.name.age=200;
//alert(a.name.age)
 
 
//IE678不兼容json,需要调用json2.js来做兼容
//妙味  视频名字:对象的引用

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。