工具
ZH

JSON 是什么?

JSON(JavaScript Object Notation)是一种用于存储和交换数据的轻量级文本格式。它既便于人阅读,也便于程序解析,因此已成为 Web API、配置文件和数据导出的标准格式。

JSON 的含义与入门示例

JSON 是 JavaScript Object Notation(JavaScript 对象表示法)的缩写。它由 Douglas Crockford 在 2000 年代初期推广开来,语法借鉴自 JavaScript,并已标准化为 RFC 8259 和 ECMA-404。尽管名字里带有 JavaScript,JSON 却不依赖于任何编程语言:几乎所有语言都能读写 JSON。

下面是一个描述人物的简单 JSON 文档:

{"name": "Ada Lovelace", "born": 1815, "languages": ["English", "French"], "mathematician": true, "spouse": null}

JSON 数据类型

类型示例说明
字符串"Hello"用双引号括起的文本,可包含 \n 等转义
数字42、-3.14、6.02e23不支持 NaN、Infinity、十六进制或前导零
布尔值true、false始终小写
空值null表示空值或未知值
对象{"key": "value"}名称/值对;名称为字符串
数组[1, 2, 3]由任意类型的值组成的有序列表

JSON 没有日期类型:日期通常写成 ISO 8601 格式的字符串,例如 "2026-05-01T10:00:00Z"。

JSON 格式:语法规则

JSON 文件是什么?

JSON 文件是扩展名为 .json 的纯文本文件,其中包含一个 JSON 文档。它的媒体类型是 application/json,应以 UTF-8 编码保存。常见的 JSON 文件包括应用和网站导出的数据(例如 Google Takeout 或社交媒体的数据下载)、package.json 等配置文件、保存到本地的 API 响应,以及用于分析的数据集。由于 JSON 文件是纯文本,打开它是安全的,它无法执行任何代码。

JSON 文件怎么打开

平台打开方法
Windows右键单击文件 → 打开方式 → 记事本,或使用 VS Code 等代码编辑器。把文件拖进浏览器窗口也能查看。
Mac用“文本编辑”或代码编辑器打开,或将其拖到浏览器窗口中。
iPhone 和 Android在“文件”App 中用文本查看器打开,或将其加载到在线 JSON 查看器中。我们的查看器支持手机,文件始终保留在你的设备上。
网页浏览器Firefox 内置了 JSON 查看器;在任何浏览器中,在线 JSON 查看器都能以可折叠的树形结构显示数据。
Excel在 Windows 上使用数据 → 获取数据 → 来自文件 → 从 JSON,或先用 JSON 转 CSV 工具转换文件。

JSON 与 XML 对比

JSONXML
语法花括号、方括号、名称/值对开始标签和结束标签
数据类型字符串、数字、布尔值、null、对象、数组仅有文本,除非由 Schema 定义类型
体积紧凑因结束标签而更大
注释不支持支持
属性、命名空间不支持支持
典型用途Web API、配置文件、NoSQL 数据库文档、办公文件、SOAP 和企业系统

API 和应用程序中的 JSON

大多数 Web API 都使用 JSON 发送和接收数据。客户端发送带有 Content-Type: application/json 请求头的请求,服务器返回 JSON,程序再将其转换为原生对象:JavaScript 中使用 JSON.parse,Python 中使用 json.loads,PHP 中使用 json_decode。JSON 还广泛用于 package.json 和 tsconfig.json 等配置文件、MongoDB 等文档数据库,以及 AI 模型的结构化输出。

常见的 JSON 错误

将数据粘贴到 JSON 校验工具中,即可看到问题所在的确切行和列,也可以使用“修复”功能自动修正。

JSON5、JSONC 和 JSON Lines

常见问题

JSON 是编程语言吗?

不是。JSON 是一种数据格式:它只用来描述数据,不能包含逻辑、函数或注释。

JSON 和 JavaScript 对象是一回事吗?

不是。JSON 是一种看起来像 JavaScript 对象字面量的文本,但规则更严格:键和字符串必须使用双引号,不允许出现函数、undefined 和注释。JSON.parse 可以把这段文本转换为真正的对象。

如何创建 JSON 文件?

在任意文本编辑器中按照上述规则编写数据,然后以 UTF-8 编码保存为扩展名为 .json 的文件。使用前,请先用 JSON 校验工具检查一下。

最后更新: