JSON 差异对比
比较两个 JSON 对象并即时发现差异
新增: 0 删除: 0 修改: 0 未变更: 0
使用方法
- 粘贴原始 JSON — 在左侧编辑器面板中输入或粘贴第一个 JSON 对象。
- 粘贴修改后的 JSON — 在右侧编辑器面板中输入或粘贴第二个 JSON 对象。
- 开始对比 — 点击”对比”按钮,查找两个 JSON 对象之间的所有差异。
- 查看结果 — 新增字段显示为绿色,删除字段显示为红色,修改字段显示为黄色,未修改字段显示为白色。每个差异都会显示其点号路径。
功能特点
- 递归深度对比 — 比较各级嵌套的 JSON 对象和数组,无深度限制。
- 颜色编码结果 — 绿色表示新增,红色表示删除,黄色表示修改,白色表示未修改字段。
- 点号路径显示 — 显示完整路径(如
user.address.city),便于在复杂结构中定位变更位置。 - 手动对比 — 准备好后点击”对比”按钮触发差异比较。
- 完全客户端运行 — 您的 JSON 数据不会离开浏览器——确保完全隐私。
- 轻量快速 — 无需服务器往返——结果即时呈现。
使用场景
- API 调试: 比较两个版本的 JSON 响应,查找部署间的变更内容。
- 配置验证: 在部署到生产环境前检查配置文件变更,发现意外修改。
- 代码审查: 审查涉及 JSON 数据结构或模式文件的拉取请求。
- 数据分析: 比较以 JSON 格式导出的两个数据集,识别记录或字段差异。
相关工具
- JSON 格式化工具 — 验证、格式化并美化原始 JSON 字符串为可读的缩进结构。
- 差异检查器 — 并排比较两段纯文本,高亮显示差异。
- JSON 转 CSV — 将 JSON 数组转换为逗号分隔值,方便电子表格分析。
- YAML 转 JSON 转换器 — 在 YAML 和 JSON 格式之间相互转换。
常见问题
嵌套对象的差异比对如何工作?
差异工具递归比较嵌套对象的所有层级。当在两个输入中遇到嵌套对象时,它会深入比较其中的每个键。结果使用点符号(例如,'address.city')来指示变更值的完整路径。
什么算变更,什么算新增/删除?
如果某个字段存在于右侧 JSON 但不存在于左侧,则标记为"新增"。如果存在于左侧但不存在于右侧,则标记为"删除"。"变更"的字段在两者中都存在但值不同。"未变更"的字段在两个 JSON 对象中具有相同的值。
数组如何比较?
数组作为整体值使用深度相等性进行比较。如果数组以任何方式被修改(长度不同、元素不同),则标记为"变更"。该工具目前不显示数组元素级别的差异。
如果 JSON 结构不同会怎样?
该工具能够优雅地处理结构差异。如果一个对象中的某个键指向嵌套对象,而另一个对象中相同的键指向原始值,则标记为"变更",并显示两个值。