2

JSON : 是一种数据格式,不是一种数据类型;经常用于前后端的交互数据(前后端数据交互使用的是json字符串而不是json对象);

  1. json对象与普通对象的区别
    //普通对象
    obj = {name:'fung',age:23}
    //JSON 格式的对象;在属性名上加上双引号,只能用双引号,不能用单引号;
    jsonobj = {"name":"fung","age":23}
    //JSON格式的字符串
    str = '{"name":"fung","age":23}';
  1. JSON格式的对象和JSON格式的字符串之间的相互转换
    window.JSON是一个对象,提供了2个方法:
    1) JSON.stringify 把对象(JSON格式对象或者普通格式的对象)转换成JSON格式的字符串;
    2) JSON.parse 将JSON格式的字符串(必须是JSON格式的字符串,否则会报错)转成JSON格式的对象;在IE6~7中不兼容

3.兼容问题
不兼容原因:在IE6~7中,window下没有JSON这个对象,所以导致不兼容


eval: 在IE7以下,解决JSON.parse的兼容问题;
    console.log(eval("("+str+")"));

大煜儿
103 声望7 粉丝

用心走路,给每一个细节打一个结。