JSON 对比:比较 JSON 差异

按结构比较两个 JSON 文档:以 JSONPath 显示新增、删除和修改的值,忽略键顺序和排版。免费,在浏览器中运行。

差异

+ 新增,- 删除,~ 修改。对象按键比较(忽略键的顺序),数组按索引比较;1 和 1.0 视为相等。

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

相关工具

查看全部

什么是 JSON 对比?

JSON 对比按结构而不是按文本比较两个 JSON 文档。它会以 JSONPath 列出每个被新增、删除或修改的值,因此空白、排版或键顺序的差异都会被忽略。

如何使用 JSON 对比

  1. 把第一个文档粘贴到 原始 JSON 中。
  2. 把第二个文档粘贴到 修改后的 JSON 中。
  3. 查看汇总和差异列表(输入时会同步更新)。
  4. 用 复制 复制差异列表。

示例

输入
Original: {"a":1,"b":2,"arr":[1,2]}
Modified: {"a":1.0,"c":3,"arr":[1]}
输出
- $.b: 2
- $.arr[1]: 2
+ $.c: 3

汇总:新增:1 · 删除:2 · 修改:0。1 和 1.0 相等。

何时使用 JSON 对比

适合比较不同环境的 API 响应、配置版本或测试快照。对于顺序无关紧要的数组,或需要查看按行的文本差异时,文本对比可能更合适。

JSON 对比 的工作原理

两个输入都由严格的 JSON 解析器解析,并被并行遍历。对象按键逐个比较,与顺序无关;只存在于原始文档中的键标记为 删除(-),只存在于修改后文档中的键标记为 新增(+)。数组按位置逐项比较,因此在开头插入一项会使后面的每一项都显示为已修改。类型或值不同的标量值标记为 修改(~ 旧值 → 新值);数字按数值比较,因此 1 和 1.0 相等,大整数也会精确比较。

常见用例

  • 比较预发布和生产环境的 API 响应
  • 查看两个配置版本之间的改动
  • 检查测试快照发生了什么变化
  • 验证数据迁移

安全提示

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

常见问题

键的顺序重要吗?

不重要,对象按键进行比较。

数组是如何比较的?

按索引比较。移动元素会改变它们被比较的位置。

1 等于 1.0 吗?

是的,数字按值比较。

推荐的下一步

探索更多分类