文本

JSON 格式化工具

格式化、压缩和验证 JSON。可选择缩进方式使内容更易读,或压缩为单行。语法错误也可即时检查。


JSON 输入
格式化结果 有效的 JSON 无效的 JSON
{{ result.lines }} 行 / {{ result.bytes.toLocaleString() }} 字节
{{ result.error }}

Tips

  • JSON 的键必须用双引号括起来,单引号无效。
  • 末尾逗号(如 {"a":1,})在 JSON 规范中是无效的。
  • 数字可使用科学计数法(e 表示),但 NaN 和 Infinity 是无效的。
  • 字符串中的双引号需转义为 \",换行符用 \n,制表符用 \t
  • 压缩可有效减小文件体积。API 传输推荐使用压缩版,配置文件建议使用格式化版。

常见问题

JSON 的键必须使用双引号,不允许末尾逗号,也不能使用 undefined、函数、NaN 和 Infinity。

不可以。JSON 规范中不存在注释语法。JSON5 和 JSONC 可作为替代方案。

RFC 8259 要求必须使用 UTF-8。出于互操作性考虑,推荐使用 UTF-8。

根据 JSON 规范,所有数字均为 number 类型。较大的整数在 JavaScript 中超过 MAX_SAFE_INTEGER 时可能会丢失精度。

闲话 ― JSON 胜过 XML 的原因

2000 年代初期 XML 曾是主流,但 Douglas Crockford 于 2001 年提出 JSON 后,凭借其轻量、易用、易读的特性,2010 年代以后 JSON 已成为标准格式。

同等数据下,JSON 的字节数通常比 XML 少 30~50%,在移动通信时代直接影响应用的响应速度。

RFC 8259 规定键重复为"SHOULD NOT",并非禁止。{"a":1,"a":2} 在语法上有效,但行为未定义。