在浏览器里深度合并两个或多个 JSON 对象,数组策略可选,自带原型污染防护
- 本地处理
- 分类 开发运维
- 适合 格式化、校验、压缩或检查和代码相关的文本。
{
"a": {
"x": 1,
"y": 2
},
"tags": [
"y"
],
"keep": true
}这个工具能做什么
免费在线 JSON 合并工具,在浏览器里把两个或多个 JSON 对象做深度合并。 深度合并会同时遍历两棵树,把嵌套对象按键逐层拼起来,所以 {"a":{"x":1}} 和 {"a":{"y":2}} 合并后得到 {"a":{"x":1,"y":2}}, 而不是像浅合并(Object.assign 或展开运算符)那样直接用后一个对象 整块盖掉前一个。同名键如果两边都是标量,后者优先,也就是 B 盖 A、 C 盖 B。数组没有唯一正确的合并方式,所以由你选:替换(后者胜出)、 拼接(接在后面)、按索引合并(逐个元素)、去重拼接(先接再去重)。 粘进基底对象,再粘一到两个叠在上面,切换数组策略,一键复制带缩进的 结果。合并会跳过 __proto__、constructor、prototype 这些键,恶意数据 没法借此污染原型链。全程在本地运行,解析报错友好,链接可分享。 100% 浏览器本地,不上传。
工具细节
- 输入
- 文件 + 文本 + 数值
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 9 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 开发运维 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
JSON 合并 适合怎么用
适合穿插在写代码、查问题、做 Review、上线前的小任务里。
适合开发场景
- 格式化、校验、压缩或检查和代码相关的文本。
- 把片段整理好再放进文档、工单、提交或交接材料。
- 不切换工具,快速检查一个小 payload。
开发检查项
- 压缩、混淆这类不可逆处理,先对副本操作。
- 除非确认工具本地处理,不要粘贴密钥和敏感片段。
- 转换后的代码上线前,仍要跑自己的测试或 lint。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
把环境配置叠到基底文件上
你有一份带合理默认值的基底 config.json,还有一份很小的 production.json,只列出生产环境会变的值,比如数据库地址和日志级别。 把基底粘进 A,生产覆盖粘进 B,深度合并就给出服务实际运行用的有效 配置。logging、cache 这类嵌套块会保留你没覆盖的键,而不是像浅合并 那样让生产文件悄悄抹掉一整段。
拼接局部 API 响应或 patch 数据
一个 PATCH 请求只返回它改过的字段,而你想看到补丁落地后资源长什么 样。把当前资源粘进 A,patch 体粘进 B,合并结果就是打补丁后的状态, 数组策略让你决定返回的列表是替换还是追加到原来那份上。
合并来自多个来源的功能开关
开关来自全局默认集、团队覆盖和按用户覆盖三份。把三份分别填进 A、B、C,给白名单一类的数组选去重拼接,折叠后得到解析好的开关, 每个冲突都由按用户的值胜出。把链接分享出去,同事就能原样复现这次 解析结果。
拼合翻译或语言包字典
你有一份基底 en.json 界面文案,还有一份局部覆盖,只修了几句话而 没有把每个键重列一遍。深度合并保留完整字典的同时只套用这些修正, 你不必维护两份完整副本、也不怕它们各自漂移。结果是一份干净、可直接 上线的字典。
常见踩坑
以为是浅合并。Object.assign 和展开运算符会整块替换嵌套对象,而这个工具做的是深度合并。如果你本意是让后一个对象抹掉某个嵌套块,深度合并保留旧键会让你意外。用之前先弄清你的场景要哪一种。
想合并列表却把数组策略停在替换上。替换会让后一个数组整个丢掉前一个,tags 或 roles 列表会悄悄少掉旧条目。两份列表都该出力时,改成拼接或去重拼接。
粘了 JSON5、注释或尾逗号。解析器只认严格 JSON,一个 // 注释或尾逗号都会让那一侧非法、被踢出合并。先用 JSON 格式化工具过一遍,得到干净的严格 JSON。
隐私说明
解析和深度合并都是浏览器标签页里跑的纯 JavaScript,两个输入都不上传、 不记录、不分析。唯一要注意的是 URL 状态:两个输入和数组策略会同步到 query string,方便你分享一次完整的合并,这意味着分享链接会把你的数据 带进对方的浏览器历史以及沿途任何服务器访问日志。涉及 API 密钥、令牌或 未发布的数据时,请复制结果文本,而不是分享 URL。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。