zoukankan      html  css  js  c++  java
  • json基础

    1 xml缺点

    用xml表示一个对象,数据存储效率低

    <person>
    <firstName>Morra<firstName>
    <lastName>Doe<lastName>
    <age>30</age>
    </person>
    

    xml的解析过程如下,过程相当繁琐:

    var personElement = document.querySelector("person");
    var firstName = personElement.querySelector("firstName").innerHTML;
    var lastName = personElement.querySelector("lastName").innerHTML;
    var age = personElement.querySelector("age").innerHTML;
     
    var person = {
        firstName:firstName,
        lastName:lastName,
        age:age,
    };
    

    xml缺点:

    • 数据结构占比比较大,数据存储效率低
    • xml阅读、解析、与生成数据需要繁琐的代码,代码编写效率低。

    2 json基础

    由于xml的以上缺点,json开始流行起来。JSON是一种数据格式,不是语言,它只定义对象的结构和数据。

    字符串必须用双引号,数字和布尔值不变。

    2.1 对象

    js中的对象:

    var person = {
        firstName:"Morra",
        lastName:"Doe",
        age:30
    };
    

    JSON写法:

    {
        "firstName":"Morra",      //json中属性名也是放在双引号里的
        "lastName":"Doe",
        "age":30
    }                            //也没有分号
    

    也可以嵌套:

     {
        "firstName": "Morra",
        "lastName": "Doe",
        "age": 30,
        "address": {
            "country": "China",
            "city": "somewhere"
        }
    }
    

    2.2 数组

    js中的数组:

    var values = ["john", 30, false, null];
    

    json数组格式:

    ["john", 30, false, null]
    

    2.3 序列化与反序列化

    需要用到js里的JSON对象,它可以串行化js对象,也能解析json对象。

    var person = {
        firstName:"Morra",
        lastName:"Doe",
        age:30
    };
     
    var json =JSON.stringify(person);  //序列化
    console.log(json);  //{"firstName":"Morra","lastName":"Doe","age":30}
     
    var personData = JSON.parse(json);   //解析json,反序列化
    console.log(personData); //Object {firstName: "Morra", lastName: "Doe", age: 30}
    
  • 相关阅读:
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    PHP中foreach用法详细讲解
  • 原文地址:https://www.cnblogs.com/whatisfantasy/p/6219967.html
Copyright © 2011-2022 走看看