YamlBox

JSON 工具

JSON Diff — 比较两个 JSON 文档

粘贴两个 JSON 文档并获取更改内容的精确列表 - 按路径,而不是按行。非常适合比较环境之间的 API 响应、配置版本和负载。

转换选项

JSON — 已更改(右)

JSON — 原始(左)

示例: 配置——之前 · API 响应 — 之前 —⌘/Ctrl + Enter 转换 · 拖放文件以加载它 · 本地处理

差异报告

输出是只读的。使用复制、下载或共享将其移出。

如何使用 JSON 差异 工具

  1. 粘贴原来的JSON

    左窗格包含“之前”文档。从文件或 API 响应粘贴。

  2. 粘贴更改后的JSON

    将第二个编辑器切换到“之后”文档。报告会随着您的输入而更新。

  3. 按路径读取更改

    每个更改都会显示 JSONPath(如 $.env.LOG_LEVEL)、旧值、新值以及是否添加、删除或修改。

这个工具有何不同

  • 结构差异 - 键顺序和空格永远不会产生误报
  • 每次更改都有精确的 JSONPath,因此您可以直接跳到它
  • 摘要计数:添加、删除和更改的密钥
  • 显式检测类型更改(字符串 → 数字、对象 → 数组)
  • 客户端:可以安全地比较暂存和生产有效负载

按架构划分的隐私: 此页面不包含接收您输入的分析,并且转换代码在您的选项卡中运行。加载后您可以断开网络并继续工作。

JSON 差异 — 常见问题

这与文本差异有何不同?

文本差异比较行,因此重新格式化或重新排序键会产生噪音。该工具解析两个文档并按路径比较值,因此它仅报告真正的语义更改。

它是否检测到更改的数组项?

是的——数组是逐个元素进行比较的。存在于一个文档中但不存在于另一个文档中的元素将被报告为在索引路径(例如 $.users[2])处添加或删除。

它可以比较不同按键顺序的JSON吗?

是的。键顺序无关紧要,因为两个文档都会首先解析。 {"a":1,"b":2} 和 {"b":2,"a":1} 比较相同。

我也可以比较 YAML 文件吗?

首先使用另一个选项卡中的 YAML 到 JSON 转换器将它们转换,然后将两个 JSON 输出粘贴到此处。由于差异是结构性的,因此首先将 YAML 转换为 JSON 不会影响结果。

正在搜索 “比较 json 文件”, “json在线比较”, “json差异工具”?您来对地方了—— 浏览所有19工具.

深入阅读

博客文章 · 6 分钟阅读 JSON diff:比较数据的实际结构 将两个 JSON 有效负载与结构性 JSON 差异进行比较,忽略按键顺序和空格,突出显示移动的值,并说明文本差异为何会产生误导。 阅读指南 →