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>