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 字符