什么是 JSON?

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 应用程序。