跳到主要内容
1123.net
ZH
1123.net

搜索工具

在工具目录中筛选,全部在浏览器本地完成。

输入关键词即可筛选,按回车打开第一个结果。

JSON 格式化

这个工具在浏览器本地格式化、压缩和校验 JSON,数据不会发送到任何地方。输入有误时会标出解析失败的行号和列号,可选的键排序还能让文件对比更容易阅读。

所有数据都在你的浏览器本地处理,不会上传到我们的服务器。

如何使用这个工具

  1. 1 把 JSON 粘贴或输入到左侧文本框,内容会立即接受校验。
  2. 2 点击“格式化”整理缩进,或点击“压缩”去掉所有可省略的空白。
  3. 3 选择 2 个空格、4 个空格或制表符缩进;需要稳定的键顺序时勾选“键排序”。
  4. 4 复制或下载结果,如果想重新开始,清空两个文本框即可。

公式与计算逻辑

格式化

JSON.stringify(value, null, indentation)

格式化会先把 JSON 解析成值,再按所选缩进重新序列化。压缩使用同一套序列化过程,只是不加缩进,也不保留多余的空白。

错误位置

JSON 无效 → 先得到字符位置,再换算成行号和列号

解析失败时,解析器的字符位置会换算成行号和列号。浏览器或运行时给出的原始信息会接在一句简短的提示之后显示。

示例演示

格式化一段紧凑的对象

一行 API 响应需要变得易读。

  1. 输入:{"b":2,"a":1}
  2. 选择 2 个空格缩进后格式化
  3. 输出:{ "b": 2, "a": 1 }

格式化后的版本更容易检查。再点“压缩”就会回到原来不带空格的紧凑形式。

定位一处语法错误

一个多余的逗号让配置文件无法解析。

  1. 粘贴文件内容,看错误提示的行号
  2. 错误指向出现多余符号的那一行
  3. 删掉该符号后重新格式化

行号和列号指向解析器第一次无法继续的位置。

边界情况与精度

JSON 不是 JavaScript

注释、尾随逗号、单引号和 undefined 都不是合法的 JSON。如果文件其实是 JSON5 或 JSONC,请改用按严格 JSON 规则检查的工具。

大文件

格式化在本地完成,但特别大的文档可能需要一点时间,并且受浏览器内存限制。过大的文件建议拆成几部分处理。

键的顺序

按照规范,JSON 对象本身是无序的。开启键排序后输出顺序固定,适合用来比较不同文件。

常见问题

格式化工具会修复无效的 JSON 吗? +

不会。它只报告问题,不做猜测。按照提示的行号和列号修改后重新格式化即可。

格式化与压缩有什么区别? +

格式化会加上缩进和换行,方便阅读;压缩会去掉可省略的空白,让数据更小。两者保留的数据完全一样。

可以给键排序吗? +

可以。勾选“键排序”后,工具会在每一层嵌套中按字母顺序排列对象键,数组的顺序始终不会改变。

我的 JSON 会被上传吗? +

不会。解析和格式化都在你的浏览器里完成,数据不会发送到服务器,也不会被保存。

为什么合法的 JavaScript 对象会报错? +

JavaScript 的对象写法允许注释、尾随逗号和单引号,而 JSON 不允许。去掉这些写法,或改用支持 JSON5 的工具。