JSON 对比 - 在线对比 JSON 增删改差异

对比两份 JSON 的增删改,数组按 LCS 对齐不乱位,输出彩色差异视图与 RFC 6902 Patch

JSON 对比 · 使用说明

JSON 对比工具把两份 JSON 并排比较,自动标出新增、删除与修改:对象按键比较,数组用最长公共子序列对齐,中间插入元素不会把后面全部标红。结果分两层:彩色差异视图一眼看清改动;RFC 6902 Patch 是机器可读的变更清单,可直接交给程序处理。对比全部在浏览器本地完成,两份 JSON 都不会上传,适合核对配置变更、接口返回与 AI 生成内容的差异。

示例

输入
A:{"db":{"port":3306}} B:{"db":{"port":5432}}
输出
~1 处修改:/db/port 3306 → 5432
Patch:[{"op":"replace","path":"/db/port","value":5432}]

如何使用

  1. 把旧 JSON 粘进 A、新 JSON 粘进 B
  2. 点击「对比」,查看彩色差异与统计
  3. 复制下方 RFC 6902 Patch 交给程序处理

小贴士

  • 数组按 LCS 对齐,中间插入不会导致整段误标
  • Patch 路径遵循 RFC 6902,可直接用于接口或脚本
  • 「交换 A/B」可快速反转对比方向

常见问题

JSON 对比会上传我的数据吗?

不会。两份 JSON 的解析、递归比较与 Patch 生成全部在浏览器本地完成,内容不会上传任何服务器,和 JSON 格式化 一样纯本地运行,可放心粘贴含敏感配置的内容。

数组对齐是怎么做的?

用最长公共子序列(LCS)把两边数组元素配对:中间插入或删除元素时,只有真正变化的元素被标出,不会像逐索引比较那样把后面全部标红;完全相同的元素保持灰色不动。

RFC 6902 Patch 有什么用?

它是标准的 JSON Patch 格式,逐条列出 add / remove / replace 操作与 JSON Pointer 路径,可以直接交给支持该标准的程序、接口或代码(如后端审计日志、配置热更新),比肉眼读差异更可靠。

和文本 Diff 有什么区别?

文本 Diff 按字符行比较,JSON 换个键顺序、数字改个格式就会被误判为大改;本工具按 JSON 结构比较,键顺序不同、格式化风格不同不影响结果,语义相同则显示完全一致。

支持多大的 JSON?

受浏览器内存限制,常规几百 KB 到几 MB 都没问题;超大文件建议先用 JSON 格式化 确认合法性,或只截取关心的子树来对比。

📂

松开以自动格式化

支持 .json / .sql / .csv / .html / .css / .xml / .yaml 文件