FormLab

JSON 格式化与对比

格式化、压缩、按路径取值、左右 Diff 对比、错误行号定位。

空闲
缩进:

        
字符数
0
行数
0
节点数
0
最大深度
0

它能解决什么问题

调试 API 返回值、清洗配置文件、对比两个接口响应的差异、按字段抽取数据。普通 JSON 工具只做"格式化",本工具多做三件事:

怎么解读结果

右侧四个统计指标:

使用技巧与注意事项

  • JSON5 不是标准 JSON:本工具是严格 JSON 解析,注释、尾随逗号、单引号都不会被接受。如果你的输入是 YAML / JSON5,请先用对应解析器。
  • 大文件不要一次粘贴:超过 5 MB 的 JSON 会卡顿,浏览器单 tab 的内存有限。如果你要处理生产数据,请分片或下载 IDE(VSCode 格式化)。
  • Diff 仅看 key 差异:如果你想看值变更的具体行,建议改用"文本 Diff"工具并把 JSON 排序后再粘贴。
  • JSON Path 的过滤表达式语法接近 Jayway/JsonPath。完整文档:json-path/JsonPath。

FAQ

支持 JSON5 / YAML 吗?

不支持。严格 JSON。如果你需要 YAML 转换,可以用其他工具先把 YAML 转成 JSON。

为什么 JSON Path 有时返回空?

99% 的情况是路径写错了:注意 $ 起始、数组用 [n] 而非 .n、过滤表达式里用 @ 表示当前节点。建议先用通配符 * 试探结构。

数据会上传吗?

不会。解析和路径查询都在浏览器本地完成。详见 隐私政策。

「JSON 格式化与对比」的适用边界在哪里?JSON5 不是标准 JSON :本工具是严格 JSON 解析,注释、尾随逗号、单引号都不会被接受。如果你的输入是 YAML / JSON5,请先用对应解析器。 大文件不要一次粘贴 :超过 5 MB 的 JSON 会卡顿,浏览器单 tab 的内存有限。如果你要处理生产数据,请分片或下载 IDE(VSCode 格式化)。 Diff 仅看 key 差异 :如果你想看值变更的具体行,建议改用"文本 Diff"工具并把 JSON 排序后再粘贴。 JSON Path 的过滤表达式 语法接近 Jayway/JsonPath。 换句话说,它解决的是「按你给的条件做一次快速估算」这一类问题,不适用于需要查权威数据、核对官方文件,或者要逐条审合同、做专业判断的场景。凡是结果会直接影响到花钱、签约、对外承诺的事情,都应该回到原始资料和官方口径再确认一次,把这里的输出当作中间的一步,而不是终点。
「JSON 格式化与对比」的结果应该怎么看?先看最后给出的那个数值,再回到这一段解释里对照:右侧四个统计指标: 字符数 / 行数 :格式化后的体量。压平到一个屏幕内方便对比。 节点数 :所有 key 与数组元素的总数。如果 API 返回 JSON 节点异常多,可能是分页没生效。 最大深度 :嵌套层数。深度过大(例如 >10)通常意味着数据结构应该重构成扁平表。 看的时候把「数值本身」和「数值成立的前提」分开看,前者是你填进去的东西算出来的,后者决定了它在什么情况下才算数。数值变大或变小分别代表什么,页面在这一节里已经写清楚了。
拿到「JSON 格式化与对比」的结果后可以直接照着做吗?把它当成做决定前的一份对照材料,比当成答案更稳妥:JSON5 不是标准 JSON :本工具是严格 JSON 解析,注释、尾随逗号、单引号都不会被接受。如果你的输入是 YAML / JSON5,请先用对应解析器。 大文件不要一次粘贴 :超过 5 MB 的 JSON 会卡顿,浏览器单 tab 的内存有限。如果你要处理生产数据,请分片或下载 IDE(VSCode 格式化)。 Diff 仅看 key 差异 :如果你想看值变更的具体行,建议改用"文本 Diff"工具并把 JSON 排序后再粘贴。 JSON Path 的过滤表达式 语法接近 Jayway/JsonPath。 这一页给出的是在当前输入下算出来的一个量级,它并不包含你的实际执行成本、突发情况和对方可能的变化。真正落地之前,再把结果和实际条件对一遍,看看哪些假设在现实里不成立。
JSON 格式化与对比需要填写哪些信息?「JSON 格式化与对比」一共用到 8 个输入项:输入、2 空格、4 空格、Tab、输出、JSON 输入、Path 表达式、结果。这些字段在页面上是按计算顺序排下来的,前面的输入会直接影响后面的结果,所以不要跳过看不懂的那一栏。建议先把每个数字的单位口径对齐再动手填,单位不统一是这类计算里最常见、也最容易被忽略的错误来源。

相关工具