JSON数据格式

本文深入探讨了JSON数据格式的特点,包括其作为数据交换标准的角色,如何在前端与后端间传输数据,以及如何使用JSON.parse和JSON.stringify进行数据转换。此外,还介绍了如何利用JSON实现对象的浅克隆与深克隆。
摘要由CSDN通过智能技术生成

JSON数据格式

  • JSON数据格式:他不是数据类型,它是一种数据格式
  • 一般情况下我们从后台请求来的数据都是json格式的
  • 页面都是动态渲染的;是前端通过请求后台的数据库,后面把最新的数据返回,前面接受到后端返给的数据,然后进行字符串拼接,渲染到页面上;
  • JSON数据格式
    • json格式的对象
    • json格式的字符串
  • JSON.parse:把json格式的字符串转换为json格式的对象
  • JSON.stringify:把json格式的对象转换为json格式的字符串
       //    JSON数据格式:他不是数据类型,它是一种数据格式
        // 一般情况下我们从后台请求来的数据都是json格式的
        // JSON数据格式
        // :json格式的对象
        // :json格式的字符串
        // JSON.parse:把json格式的字符串转换为json格式的对象
        // JSON.stringify:把json格式的对象转换为json格式的字符串
        // let obj = {"name":3} // json格式的对象
        // obj= JSON.stringify(obj)
        // console.log(obj)

        // let obj = '{"name":3}' // json格式的字符串
        // obj=JSON.parse(obj)
        // console.log(obj.name)// 3
---------------------------------------------------------
   			//JSON加减两边反引号,字符串
          var str = "1234";
        console.log(JSON.parse(str));//1234
        console.log(typeof JSON.parse(str));//number
-----------------------------------------------------------
          // 这个是JSON格式的对象
        // var  obj ={"name":"hello","str":"world"};
        // console.log(obj.name);
        // console.log(obj["name"]);
        // 这个是JSON格式的字符串;
        //var str = '{"name":"hello","str":"world"}';

        // JSON.stringify : 将JSON格式的对象转成JSON格式的字符串
        //console.log(JSON.stringify(obj));

        // JSON.parse: 将JSON格式的字符串转成JSON格式的对象
        //console.log(JSON.parse(str))

利用JSON实现浅克隆
        // var  obj = {a:1,b:2};
        // var obj1 = obj;
        // obj1.a=100;
        // console.log(obj);
        var  obj = {a:{c:1},b:2};
        // var newObj = {}
        // for(var key in obj){
        //     newObj[key]=obj[key]
        // }
        // obj.a.c=100;
        // console.log(newObj);
        // 深克隆 :两个对象是独立的,互不影响;
        var newObj = JSON.parse(JSON.stringify(obj));
        obj.a.c=2;
        console.log(newObj);
  • 深克隆参考lodash中的深克隆:lodash

JSON(IE8以下不兼容)
        //数据绑定  JSON 不是数据类型  window下存在的、IE8以下不兼容
        //eval
        console.log('JSON' in window); //IE7 false
        console.log("eval" in window);//true
        var str ='{"a":"1"}'
        console.log(str);//"{"a":"1"}" 
        console.log(eval("("+str+")"));//{a: "1"}  [object Object]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值