JSON 介绍什么是 JSON?了解 Web 上最流行的数据交换格式。学习它的语法、用法,以及为什么它成为了现代 API 的标准。
定义JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。它易于人阅读和编写,同时也易于机器解析和生成。它是基于 JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999 的一个子集。
JSON 有什么用处?JSON 主要用于在服务器和 Web 应用程序之间传输数据,是 XML 的替代方案。
Web APIREST API 发送和接收数据的标准格式。
配置文件许多现代应用程序(如 VS Code、package.json)使用 JSON 存储设置。
数据存储MongoDB 和 CouchDB 等 NoSQL 数据库使用类 JSON 文档进行存储。
核心特性为什么 JSON 能够成为数据交换的事实标准?
轻量级比 XML 更简洁,文件体积更小,网络传输更快。
语言无关几乎所有编程语言(Python, Java, C#, PHP 等)都支持且易于解析。
自描述性结构清晰,易于阅读和理解。
原生 JS 支持JavaScript 引擎可直接解析和处理,无需额外库。
JSON 语法JSON 建构于两种结构:“名称/值”对的集合(对象)和值的有序列表(数组)。
1数据在名称/值对中名称/值对包括字段名称(在双引号中),后面跟一个冒号,然后是值。
2数据由逗号分隔每个名称/值对或数组中的值由逗号分隔。
3花括号保存对象对象由花括号 {} 包围。一个对象可以包含多个名称/值对。
4方括号保存数组数组由方括号 [] 包围。一个数组可以包含多个值。
{
"string": "Hello World",
"number": 42,
"boolean": true,
"null": null,
"object": {
"key": "value"
},
"array": [
1,
2,
3
]
}JSON vs XML对比这两种最流行的数据交换格式。
特性JSONXML可读性易读(干扰少)较难(标签冗余)解析速度快(原生支持)慢(需要解析器)数据类型丰富(字符串、数字、数组...)主要是字符串体积紧凑庞大(闭合标签)使用建议如何高效使用 JSON 并避免常见误区。
使用 UTF-8 编码始终使用 UTF-8 编码 JSON 数据,以确保跨系统兼容性。
日期使用 ISO 8601JSON 没有日期类型。请使用 ISO 8601 字符串(如 "2023-01-01T12:00:00Z")。
避免尾随逗号标准 JSON 不允许尾随逗号,这会导致解析错误。
Key 使用驼峰命名按照惯例,JSON 键名使用驼峰命名法(如 "userName")以保持一致性。
常见问题JSON 只是给 JavaScript 用的吗?不是。虽然 JSON 衍生自 JavaScript,但它是一种独立于语言的数据格式。许多编程语言都提供了解析和生成 JSON 数据的代码。
JSON 支持哪些数据类型?JSON 支持字符串(String)、数字(Number)、布尔值(Boolean)、Null、对象(Object)和数组(Array)。
为什么要用 JSON 而不是 XML?JSON 比 XML 更轻量、更易读,解析速度更快。它占用更少的带宽,并且与 JavaScript 原生兼容,非常适合 Web 应用程序。