JS_json格式

      /*

        json字符串

        ==>是一种固定的字符串格式

        ==>"asdfgasdfasdfg" 普通字符串

        ==>'123456789123456' 数字字符串

        ==>'<h1>jjjjj</h1>' html格式字符串

        ==>json也是一种字符串的格式,和普通字符串本质没有区别

            =>只是多了一些固定格式

        作用

        ==>在电脑网络传输的过程中

        ==>只能传递字符串

        ==>传递不了对象和数组数据类型

        ==>如果想传递数组或者对象,需要转换成字符串格式传递

        ==>json格式就是满足对象和数组数据结构的一种字符串

        怎么用

        ==>两个方法

        ==>JSON.parse()

            =>把json格式的字符串转换成JS的数组或对象

        ==>JSON.stringify()

            =>把JS格式的数组或者对象转换成json格式的字符串

        json数据格式

        1、描述数组或者对象数据类型

        2、对象中的key和value都是用双引号包裹

            ->数字和布尔值可以不需要加引号

        3、数组里面可以放多个对象

        4、当多个数据的时候,最后一个数据不能有逗号(,)

        5、一个json格式中,可以使用的符号,只有{},[],""和逗号(,)

        6、转换json格式字符串的时候,函数会被自动过滤

        语法:

        1、JSON.parse()

            ==>语法:JSON.parse(要转换的数组或者对象)

            ==>返回值:JS格式的数组或者对象

        2、JSON.stringify()

            ==>语法:JSON.stringify(要转换的数组或者对象)      

            ==> 返回值:一个json格式的字符串      

        */

      //1、JSON.stringify()

      var obj = {

        name: "zhangsan",

        age: 18,

        gender: "男",

        fn: function () {},

      };

      console.log(obj);

      //定义一个对象并把其转换成json格式

      var objStr = JSON.stringify(obj);

      console.log(objStr);

      //2、JSON.parse()

      //json格式转换为对象

      /* var jsonStr = '{name:"zhangsan","age":18,"gender":"男"}'; */

      //报错Uncaught SyntaxError: Unexpected token n in JSON at position 1atJSON.parse (<anonymous>)

      //JSON中索引位置1的出现意外的标识符n

      var jsonStr = '{"name":"zhangsan","age":18,"gender":"男"}';

      var obj = JSON.parse(jsonStr);

      console.log(obj);

      //   案例

      //JSON.parse+JSON.stringify可以完全复制一份没有函数的对象

      var objStr1 = {

        name: "lisi",

        age: 18,

        gender: "男",

      };

      //转换过后就是一个String类型,基本数据类型

      var str = JSON.stringify(objStr1);

      //把基本数据类型str赋值给了parse函数的第一个参数

      //得到的是一个新的对象数据结构,和objStr1没有关系

      var obj1 = JSON.parse(str);

      obj1.name = "wanwu";

      console.log(objStr1); //{name: 'lisi', age: 18, gender: '男'}

      console.log(obj1); //{name: 'wanwu', age: 18, gender: '男'}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值