JSON

作者: Cissy_fba3 | 来源:发表于2018-09-25 14:38 被阅读0次

    JSON是一种轻量级的数据交换语言,用来传输由属性值或者序列性的值组成的数据对象。虽然JSON是JavaScript的一个子集(JSON 这门语言抄袭了 JS这门语言),但是JSON是独立于JS的另一种语言。

    JSON 数据格式与语言无关,脱胎于 JavaScript,但目前很多编程语言都支持 JSON 格式数据的生成和解析。JSON 的官方 MIME 类型是 application/json,文件扩展名是 .json

    JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包

    JSON 和JS 区别:

    1. JSON没有抄袭undefined 和function(数据类型);
    2. JSON表示string必须双引号“;


      JSON与JavaScript的区别.png

    解析与序列化(就是它的作用)
    JSON对象有两个方法:stringify()和parse()
    stringinfy():把JavaScript对象序列化为JSON字符串
    parse():把JSON字符串解析为原生JavaScript值

    var book={
      title:"Abc",
      authors:["Chen"],
      edition:3,
      year:2011
    }
    var jsontext=JSON.stringify(book)
    //{ "title":"Abc", "authors":["Chen"] "edition“:3,”year“:2011}
    
    var book2=JSON.parse(jsontext)
    
    

    虽然book与book1具有相同属性,但是他们是两个独立的,没有任何关系的对象。

    利用JSON的这两个属性可以实现JavaScript对象的深拷贝(以上代码就为一个深拷贝)

    ps:
    浅拷贝:仅仅是指向被复制的内存地址,如果原地址中对象被改变了,那么浅复制出来的对象也会相应改变。
    深拷贝:在计算机中开辟了一块新的内存地址用于存放复制的对象。

    相关文章

      网友评论

          本文标题:JSON

          本文链接:https://www.haomeiwen.com/subject/oyfcoftx.html