JSON 格式化与美化工具

在线格式化并美化 JSON,支持 2 空格、4 空格或制表符缩进,可按字母排序键,语法错误会精确提示行号和列号。完全在浏览器中运行。

输出

完全在浏览器中运行,您的数据不会被上传。

相关工具

查看全部

什么是 JSON 格式化?

JSON 格式化工具会为压缩过或排版混乱的 JSON 重新缩进,让它一目了然。它使用严格的 RFC 8259 解析器,因此遇到无效 JSON 时会准确告诉你出错的位置(行、列以及指向出错字符的标记)。64 位 ID 之类的大整数会按原样保留,不会被四舍五入。

如何使用 JSON 格式化

  1. 把 JSON 粘贴到 JSON 输入 框中(或点击 加载示例)。
  2. 选择 缩进 方式:2 个空格、4 个空格或制表符。
  3. 如果希望对象的键按顺序排列,请勾选 按字母顺序排序键。
  4. 点击 格式化(输入时输出也会自动更新)。
  5. 用 复制 复制结果,或用 下载 保存为文件。

示例

输入
{"id":12345678901234567890,"a":[1,{"b":null}]}
输出
{
  "id": 12345678901234567890,
  "a": [
    1,
    {
      "b": null
    }
  ]
}

使用 2 空格缩进,20 位的 ID 被完整保留。

何时使用 JSON 格式化

适合阅读 API 响应、配置文件或日志,在需要稳定键顺序的情况下做差异对比,或定位 JSON 语法错误的具体位置。它不接受 JSON5 或 JSONC(注释、末尾逗号、未加引号的键),这些都会被报告为错误。如果要按规则(类型、必填字段)校验数据,请改用 JSON Schema 验证器。

JSON 格式化 的工作原理

输入内容由一个手写的严格 JSON 解析器处理,它在解析时记录位置并构建语法树。数字以原始文本形式保存,因此 12345678901234567890 或 1.50e+10 会原样输出,而 JSON.parse 会把它们转换成 64 位浮点数。随后按所选缩进输出语法树,字符串会以规范形式重新转义(例如 \u00e9 会变成 é)。开启排序后,每一层的键都按 Unicode 码点排序。遇到语法错误时,解析器会停在第一个出错的字符,并给出具体原因,例如多余的末尾逗号、单引号、注释或缺少逗号。

常见用例

  • 调试前先把压缩过的 API 响应美化成易读格式
  • 为配置文件统一键顺序,让差异更小
  • 在大型 JSON 文件中找出缺少逗号的那一行
  • 查看包含 64 位 ID 的 JSON 且不丢失精度

安全提示

所有处理都在你的浏览器本地完成,粘贴的代码不会被上传。

常见问题

为什么带注释的 JSON 会报错?

标准 JSON(RFC 8259)不允许注释或末尾逗号。格式化工具会连同位置一起报告,方便你删除它们。

大数字会被改动吗?

不会。数字按原样复制,因此大于 2^53 的整数也会保留每一位。

遇到重复的键会怎么处理?

两个条目都会按原来的顺序保留在输出中。JSON 验证器会把重复的键列为警告。

键的顺序会改变吗?

只有启用 按字母顺序排序键 时才会改变,否则保持原有顺序。

推荐的下一步

探索更多分类