二维码

JavaScript JSON格式

JavaScript JSON格式


JSON 是一种用于存储和传输数据的格式。

当数据从服务器发送到Web时,通常使用JSON页。


什么是 JSON?

  • JSON 代表 JavaScript 对象表示法

  • JSON 是一种轻量级数据交换格式

  • JSON 与语言无关*

  • JSON是“自描述的”,易于理解

  • JSON 语法源自 JavaScript 对象表示法语法,但JSON格式仅为文本。用于读取和生成JSON数据的代码可以用任何编程语言编写。

JSON 示例

以下 JSON 语法定义了一个 employees 对象:一个包含 3 条员工记录(对象)的数组:

1
2
3
4
5
6
7
{  
"employees":[
  {"firstName":"John", "lastName":"Doe"},
  {"firstName":"Anna", "lastName":"Smith"},
  {"firstName":"Peter", "lastName":"Jones"}
]
}

JSON 格式的计算结果为 JavaScript 对象

JSON 格式在语法上与用于创建 JavaScript 对象。

由于这种相似性,JavaScript 程序可以轻松地将JSON数据转换为原生数据 JavaScript 对象。


JSON 语法规则

  • 数据位于名称/值对中
  • 数据用逗号分隔
  • 大括号固定物体
  • 方括号包含数组

JSON 数据 - 名称和值

JSON数据被写入名称/值对,就像 JavaScript 对象一样 性能。

名称/值对由字段名称(用双引号括起来)、 后跟冒号,后跟值:

1
"firstName":"John"

JSON 名称需要双引号。JavaScript 名称则不然。


JSON 对象

JSON对象写在大括号内。

就像在 JavaScript 中一样,对象可以包含多个名称/值对:

1
{"firstName":"John", "lastName":"Doe"}

JSON 数组

JSON数组写在方括号内。

就像在 JavaScript 中一样,数组可以包含对象:

1
2
3
4
5
"employees":[  
  {"firstName":"John", "lastName":"Doe"},
  {"firstName":"Anna", "lastName":"Smith"},
  {"firstName":"Peter", "lastName":"Jones"}
]

在上面的示例中,对象“employees”是一个数组。它包含三个对象。

每个对象都是一个人的记录(有名字和姓氏)。


将 JSON 文本转换为 JavaScript 对象

JSON 的一个常见用途是从 Web 服务器读取数据,并在网页中显示数据。

为简单起见,可以使用字符串作为输入来演示这一点。

首先,创建一个包含 JSON 语法的 JavaScript 字符串:

1
2
3
4
let text = '{ "employees" : [' +  
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';

然后,使用 JavaScript 内置函数JSON.parse()将字符串转换为 JavaScript 对象:

1
const obj = JSON.parse(text);

最后,在页面中使用新的 JavaScript 对象:

1
2
3
4
5
6
<p id="demo"></p>  

<script>
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;
</script>

您可以在我们的 JSON 教程中阅读有关 [JSON]的更多信息。