分類: 開發工具
JSON 深度合併工具
合併兩個 JSON 物件或陣列,並選擇陣列的合併方式
深度合併兩個 JSON 物件或陣列:巢狀物件會逐一鍵值合併,陣列則依你選擇的方式串接、取代或取聯集。整個過程完全在你的瀏覽器中完成。
結果
{
"name": "Ada",
"tags": [
"engineer",
"mathematician"
],
"settings": {
"theme": "light",
"notifications": true
},
"role": "Lead"
}本頁的所有處理都在瀏覽器中完成,不會上傳任何內容。
這個工具能做什麼
淺層合併只會合併物件最外層的鍵,因此 JSON B 中巢狀的設定值會直接覆蓋掉 JSON A 整個巢狀物件。這個工具改採遞迴合併:相符的巢狀物件會逐一鍵值合併,陣列則依你選擇的策略處理,因此含有多層巢狀結構的設定檔或偏好設定物件,都能依預期的方式合併。
使用方式
- 在 JSON A 貼上基礎文件,在 JSON B 貼上要套用的覆寫內容。
- 選擇陣列的合併方式:串接兩者、以 B 取代 A,或取兩者的聯集。
- 查看合併結果;當兩份文件有相同鍵值時,會以 JSON B 的值為準。
隱私說明
本工具完全在你的瀏覽器中執行。輸入的內容不會被上傳、儲存或分享,關閉分頁就隨之消失。
常見問題
- 當兩份文件有相同的鍵時會發生什麼事?
- 若兩者的值都是物件,會遞迴合併;若都是陣列,則依選定的陣列策略合併;其他情況則以 JSON B 的值為準。
- 陣列的「聯集」選項會怎麼處理?
- 會保留 JSON A 的所有項目,接著加入 JSON B 中序列化後尚未出現在合併陣列裡的項目,確保不會加入重複的項目。
- 可以合併兩個 JSON 陣列,而不是兩個物件嗎?
- 可以。只要 JSON A 與 JSON B 都是陣列,就會直接依陣列策略合併,不需要先包裝成物件。