JavaScript JSON

  • JSON简释

    JSON是一种用于存储和传输数据的格式。当数据从服务器发送到网页时经常使用JSON。
    • JSON代表JavaScript Object Notation
    • JSON是一种轻量级数据交换格式
    • JSON与语言无关*
    • JSON易于理解
    * JSON语法派生自JavaScript对象表示法语法,但JSON格式仅为文本。用于读取和生成JSON数据的代码可以用任何编程语言编写。
  • JSON示例

    此JSON语法定义了一个employees对象:一个包含3个员工记录(对象)的数组:
    {
    "employees":[
      {"firstName":"John", "lastName":"Doe"}, 
      {"firstName":"Anna", "lastName":"Smith"},
      {"firstName":"Peter", "lastName":"Jones"}
    ]
    }
  • JSON格式被视为JavaScript对象

    JSON格式在语法上与用于创建JavaScript对象的代码相同。由于这种相似性,JavaScript程序可以轻松地将JSON数据转换为本机JavaScript对象。
    JSON语法规则:
    • 数据是名称/值对
    • 数据以逗号分隔
    • 大括号包含对象
    • 方括号包含数组

    JSON数据 - 名称和值

    JSON数据被写为名称/值对,就像JavaScript对象属性一样。名称/值对由字段名称(双引号),后跟冒号,后跟值组成:
    "firstName":"John"
    JSON名称需要双引号。JavaScript名称没有。

    JSON对象

    JSON对象写在花括号内。就像在JavaScript中一样,对象可以包含多个名称/值对:
    {"firstName":"John", "lastName":"Doe"}

    JSON数组

    JSON数组写在方括号内。就像在JavaScript中一样,数组可以包含对象:
    "employees":[
      {"firstName":"John", "lastName":"Doe"}, 
      {"firstName":"Anna", "lastName":"Smith"}, 
      {"firstName":"Peter", "lastName":"Jones"}
    ]
    在上面的示例中,对象“employees”是一个数组。它包含三个对象。每个对象都是一个人的记录(具有firstName和lastName)。
  • 将JSON文本转换为JavaScript对象

    JSON的一个常见用途是从Web服务器读取数据,并在网页中显示数据。为简单起见,可以使用字符串作为输入来演示。首先,创建一个包含JSON语法的JavaScript字符串:
    var text = '{ "employees" : [' +
    '{ "firstName":"John" , "lastName":"Doe" },' +
    '{ "firstName":"Anna" , "lastName":"Smith" },' +
    '{ "firstName":"Peter" , "lastName":"Jones" } ]}';
    然后,使用JavaScript内置函数JSON.parse()将字符串转换为JavaScript对象:
    var obj = JSON.parse(text);
    最后,在页面中使用新的JavaScript对象:
    <p id="demo"></p>
    
    <script>
    document.getElementById("demo").innerHTML =
    obj.employees[1].firstName + " " + obj.employees[1].lastName;
    </script>
    尝试一下