JSON 对比:忽略键顺序找出真正差异

接口联调时最常见的问题之一:两份 JSON 内容一样、键顺序不同,肉眼对比苦不堪言。本教程介绍语义化对比方法——先递归排序键名,再逐行高亮差异。

最近更新:2026年8月13日

需要马上处理?使用 JSON 对比 ,浏览器本地完成,不上传服务器。

打开 JSON 对比

为什么要先排序再比

JSON 对象的键顺序不影响语义,但逐行文本对比会把顺序差异也算进去。开启「忽略 key 顺序」后,工具先把键名递归排序再美化输出。

数组顺序是语义的一部分,因此数组不参与重排;若数组本身乱序,需要先在业务层确认是否应忽略。

怎么看 Diff 结果

绿色行表示右侧新增,红色行表示左侧独有(被删除),顶部统计增删行数;两份内容完全一致时会提示无差异。

任一侧 JSON 非法时会指明是哪一边出错,修正后自动重新对比。纯文本级对比可改用「文本对比」工具。

操作步骤

  1. 打开「JSON 对比」工具
  2. 左右分别粘贴两份 JSON
  3. 按需开关「忽略 key 顺序」
  4. 查看高亮差异与统计行数

常见问题

数字 1 和 1.0 算差异吗?

JSON 解析后数值相同即视为一致;字符串 "1" 与数字 1 类型不同,会算差异。

能对比很大的 JSON 吗?

常见规模均可;超大文件建议先裁剪到关心的一段再对比,避免页面卡顿。

JSON 会上传吗?

不会,解析与对比都在本地完成。