TingYu Tools

tools.jsonMergePatch.name

tools.jsonMergePatch.desc

目标对象

需要被合并的原始 JSON 对象

补丁对象

包含要合并的更改(使用 null 删除字段)

基本选项

💡 使用说明

什么是 JSON Merge Patch?

JSON Merge Patch (RFC 7396) 是一种简单的 JSON 补丁格式,用于描述对 JSON 对象的部分更新。与 JSON Patch (RFC 6902) 不同,它更直观易用。

功能特点

  • 使用标准的 JSON 对象作为补丁
  • 支持嵌套对象的深度合并
  • 使用 null 值删除字段
  • 简单直观,易于理解

合并规则

  • 补丁中的新键会被添加到目标对象
  • 补丁中值为 null 的键会从目标对象中删除
  • 补丁中的普通值会覆盖目标对象中的对应值
  • 补丁中的对象会递归合并到目标对象

应用场景

  • API 部分更新操作(PATCH 请求)
  • 配置文件增量更新
  • 用户设置的局部修改
  • 版本控制中的增量变更

最佳实践

  • 使用 null 明确表示字段删除
  • 保持补丁简洁,只包含需要更改的部分
  • 注意数组会被整体替换,不会合并
  • 遵循 RFC 7396 标准确保兼容性

合并结果

{
  "b": {
    "x": true,
    "y": 2
  },
  "d": "keep",
  "c": "new"
}
原始键数4
补丁键数4
结果键数5
新增键+2
删除键-1
修改键~1
合并信息
✚ 新增键 (2)
b.yc
✖ 删除键 (1)
a
⚬ 修改键 (1)
b
目标大小:49 字符
补丁大小:48 字符
结果大小:71 字符