JSON(JavaScript Object Notation)是一种轻量级的数据交换格式
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition-December 1999的一个子集。尽管JSON是JavaScript的一个子集,但JSON是语言无关的。
**数据格式**
JSON表示的数据格式包括对象(键值对的集合)和数组(值的有序集合)。数据在名称/值对中,以逗号分隔,花括号保存对象,方括号保存数组。
**语法规则**
* 数据在名称/值对中:{"name":"value"}
* 数据由逗号分隔
* 花括号保存对象
* 方括号保存数组
**数据类型**
JSON支持以下数据类型:
* 字符串(String):字符串必须用双引号括起来。
* 数字(Number):可以是整数或浮点数。
* 对象(Object):对象由花括号包围,包含键值对("key":value)。
* 数组(Array):数组由方括号包围,包含一系列值。
* 布尔值(Boolean):true或false。
* 空值(null):表示空值。
**示例**
```
{
"name": "John Doe",
"age": 30,
"isStudent": false,
"courses": ["Math", "Science"],
"address": {
"street": "123 Main St",
"city": "Anytown"
}
}
```
**使用JSON**
**解析和生成**
在JavaScript中,可以使用JSON.parse()来解析JSON字符串,将其转换为JavaScript对象。使用JSON.stringify()将JavaScript对象转换为JSON字符串。在其他编程语言中,通常也有类似的库来处理JSON数据。
**文件扩展名**
JSON数据的文件扩展名是.json。
**MIME类型**
在Web开发中,JSON数据的MIME类型是application/json。
**好处**
* 简单易学:JSON结构清晰,易于读写。
* 轻量级:相比于XML,JSON在数据传输时可以减少数据量。
* 语言无关性:JSON是独立于语言的,许多编程语言都支持JSON,使其成为跨平台数据交换的理想格式。
**注意事项**
* JSON字符串必须用双引号。
* JSON中不支持注释,虽然一些解析器可能会非官方地支持它们。
**学习资源**
MDN Web