JSON 格式化工具
使用智能缩进和语法高亮来格式化和美化 JSON 数据
JSON 输入
格式化输出
检查器
高级选项
与另一个 JSON 对比
将此 JSON 发送到 Data Diff,粘贴第二个版本即可看到变化。
可直接采取行动的验证结果
每次按键都会触发验证。JSON 有效时实时显示对象、数组、键和深度的计数;无效时报告确切的行号、列号、可能原因,并在编辑器中高亮出错位置 —— 而不只是一句“无效的 JSON”。
本工具精确定位的常见 JSON 错误
以下四类错误占了绝大多数无效 JSON。每一类都会给出出错位置和可能原因:
尾随逗号
} 或 ] 前多了一个逗号。解析器在下一行报“意外符号”,原因提示会指回那个逗号。
缺少引号或引号未闭合
未闭合的字符串会吞掉文档剩余部分。解析器报告的位置可能离真正的错误很远;行/列高亮会指出应检查的位置。
意外符号
单引号代替双引号、注释或未加引号的键。标准 JSON(RFC 8259)要求所有字符串和键都使用双引号。
无效转义序列
只有 \" \ \/ \b \f \n \r \t 和 \uXXXX 是合法转义。多余的反斜杠会在无效序列的确切位置报错。
之前 / 之后
左侧是压缩的 API 响应,右侧是用 2 空格缩进格式化的同一份数据。结构统计、树形视图和键路径都基于解析后的文档更新。
{"user":{"id":123,"name":"Chen","roles":["admin","editor"],"active":true}}
{
"user": {
"id": 123,
"name": "Chen",
"roles": [
"admin",
"editor"
],
"active": true
}
}
JSON 标准速查(RFC 8259)
- 两种结构:对象(无序键值对,{})和数组(有序值,[])。
- 值只能是:双引号字符串、数字、true、false、null、对象或数组。
- 数字不能有前导零;允许 1E10、0.5e-2 等指数形式。
- 字符串不能包含字面控制字符 —— 必须转义(\n、\t、\uXXXX)。
- 不支持注释、尾随逗号和单引号 —— 严格的语法正是 JSON 可移植性的来源。
这份数据的下一步
格式化只是第一步。无需离开浏览器即可继续工作流:
常见问题解答
关于 Json Formatter 格式化的常见问题解答
是的,我们的 JSON 格式化工具完全免费,无需注册。所有处理都在您的浏览器中完成。
只需将 JSON 数据粘贴到编辑器中,点击验证按钮。工具会即时检查语法,报告错误及其行号,并显示对象、数组和属性计数。
JSON 压缩会移除所有不必要的空白字符以减小文件大小。建议在将 JSON 部署到生产环境之前使用,以节省带宽并提升加载速度。
可以,格式化工具支持最大 10MB 的文件,采用优化的解析算法。大型 API 响应、数据库导出和配置文件都能高效处理。
格式化工具遵循严格的 RFC 8259 JSON 规范。对于包含尾随逗号或注释的 JSON,验证会将其报告为错误,因为它们不符合标准 JSON 规范。
类似 \u00e9 的转义序列会在显示时被解码,非 ASCII 文本会原样保留而不会被重新转义。对数字与字符串混合的数组进行排序时,遵循稳定排序语义(相等的键保持原有顺序),与 ECMA-262 中现代引擎实现 Array.prototype.sort 的方式一致。
可以。在选项面板中启用键排序,即可按字母顺序重新排列每一层嵌套中的对象属性。排序能让配置文件和 API fixtures 在版本控制中更易于 diff,因为无关的新增项不会再把变更分散到文件各处。
JSON 本身对整数大小没有限制,但 JavaScript 的 Number 类型只能存储 53 位安全整数。超过 9,007,199,254,740,991(2^53 - 1)的数值或高精度小数会被舍入。这是 ECMA-262 中记录的 JavaScript 引擎约束,而不是格式化工具的 bug——在 API 设计中请将这类值作为字符串处理。
权威参考资料
定义本工具所处理格式的标准与官方文档。
RFC 8259 - The JavaScript Object Notation (JSON) Data Interchange Format
定义 JSON 数据交换格式及其语法的 IETF 标准。
JSON - json.org
Douglas Crockford 创建的 JSON 原始网站,提供多种语言的格式介绍。
MDN Web Docs - Working with JSON
Mozilla 关于在 JavaScript 中处理 JSON 的指南:parse、stringify 和 reviver。
JSON - Wikipedia
JSON 数据类型、语法历史,以及它成为主流 API 交换格式的历程。