您的位置:首页 > Web前端 > JavaScript

js中的json使用

2016-07-07 10:57 495 查看
一   json字符串转成对象

//首先创建字符串

var str = '[{ "name": "cxh", "sex": "man" }]';

//调用eval函数转成对象,

   (1)  var obj =eval('(' + str + ')');

        alert(obj[0].name);//输出 cxh

  或者

        //与上面的等价

        eval("var ooo="+str)

          alert(ooo[0].name);//输出 cxh

(2)直接使用JSON对象转换,JSON对象有些浏览器可能不支持,本人使用的chrome 版本 49.0.2623.87 (64-bit) 是支持的

              var obj3 = JSON.parse(str); //由JSON字符串转换为JSON对象

               alert(obj3[0].name);

(3) 调用字符串的parseJSON转换 ,不过我使用chrome版本不支持

              var obj2 = str.parseJSON(); //由JSON字符串转换为JSON对象

               alert(obj2.name);

(二)  对象转换成json字符串

//创建数组对象

    var objJ = [{ "name": "cxh", "sex": "man" }];

       objJ.push({ "name": "kzw", "sex": "boy" });

  var last=JSON.stringify(objJ); //将JSON对象转化为JSON字符

         alert(last);  // 打印json字符串

//我的版本chorme 还是没有没有兼容

         var last=objJ.toJSONString(); //将JSON对象转化为JSON字符

             alert(last);   //[{"name":"cxh","sex":"man"},{"name":"kzw","sex":"boy"}]

构造函数创建对象

var objoC = function(){

            this.school="yizhong";

            this.han=function(){

                //  JSON.stringify(objo) 在chrome中会忽略函数,最好不要写函数 

            }

         }

          var objo=new objoC();

          objo.sex="boy"

          objo.age="18"

          var lasto=JSON.stringify(objo); //将JSON对象转化为JSON字符

        alert(lasto);//打印结果  {"school":"yizhong","sex":"boy","age":"18"}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: