在线工具 编程开发

JsonDiffPatch

JsonDiffPatch is a free online json diff tool and npm library to compare json and get a json diff

标签:

网站截图

网站简介

JsonDiffPatch 是一个免费的在线 JSON 差异对比工具,同时也提供了一个功能强大的 npm 库,用于在 JavaScript 环境中比较和生成 JSON 差异。它由开发者 Benjamin Eidelman 创建,旨在简化 JSON 数据的比对和补丁生成过程。无论是前端开发人员、后端工程师还是数据校验人员,都可以借助该工具快速查看两个 JSON 文档之间的变化。

主要功能

  • 在线对比:直接在网页左侧和右侧粘贴 JSON 数据,点击对比即可查看差异。
  • 多种输出格式:支持可视化差异(Visual Diff)、JSON 格式的 Delta 差异以及 JSON Patch(RFC 6902)标准格式。
  • 支持 JSON5 和带注释的 JSON:除了标准 JSON 外,还能解析 JSON5(一种更宽松的 JSON 超集)以及包含注释的 JSON 文件。
  • 纯文本对比:对于长字符串或文本字段,会基于字符级别进行文本差异分析(使用 Google 的 diff-match-patch 算法),使变化更加清晰。
  • 智能数组/列表匹配:如果数组中的元素是对象,会自动使用其中的 "key"、"id" 或 "name" 字段进行匹配,以便更准确地展示元素级别的增删改。
  • Gist 集成:可以通过粘贴 Gist 的 URL 来加载其中的两个 JSON 文件进行对比,方便分享和讨论。
  • 命令行使用:通过 npx 命令,可以在终端直接比较本地文件或远程 URL 的 JSON 差异,例如 npx jsondiffpatch left.json right.json。

特点说明

  • 开源免费:jsondiffpatch 库以 MIT 许可证开源,可以自由使用和修改。
  • 高效准确:针对大型 JSON 数据也有良好的性能表现,并且差异输出非常精确。
  • 便于集成:作为 npm 库,可以轻松集成到 Node.js 或浏览器项目中,用于自动化测试、数据同步等场景。
  • 可视化友好:在线工具的视觉差异模式会以高亮和折叠的方式展示变化,隐藏未更改的部分,让用户聚焦于差异点。
  • 标准化输出:除了自定义的 delta 格式,还支持生成标准的 JSON Patch,方便与其他系统配合。

总之,JsonDiffPatch 是一款实用且专业的 JSON 对比工具,非常适合开发者在日常工作中快速定位数据变更。