在前端開發中,我們經常需要處理JSON數據。有時候,我們需要將兩個JSON數據合并成一個。下面我們來看一下如何實現。
{
"name": "Tom",
"age": 25,
"address": {
"city": "Beijing",
"street": "Dongzhimen"
}
}
{
"name": "Jerry",
"age": 28,
"address": {
"city": "Shanghai",
"street": "Pudong"
}
}
假設這是我們要合并的兩個JSON數據,我們可以先將它們轉化為JavaScript對象,然后使用Object.assign()方法將它們合并。
let json1 = {
"name": "Tom",
"age": 25,
"address": {
"city": "Beijing",
"street": "Dongzhimen"
}
};
let json2 = {
"name": "Jerry",
"age": 28,
"address": {
"city": "Shanghai",
"street": "Pudong"
}
};
let result = Object.assign({}, json1, json2);
console.log(result);
上述代碼中,我們先聲明了兩個JSON數據,然后使用Object.assign()方法將它們合并到一個新對象中。在調用Object.assign()方法時,第一個參數必須是一個空對象,這樣可以保證merge后的數據都是新的,而不會影響原來的JSON數據。
運行上述代碼后,我們會得到如下結果:
{
"name": "Jerry",
"age": 28,
"address": {
"city": "Shanghai",
"street": "Pudong"
}
}
我們發現,當兩個JSON數據中的key重復時,后面的JSON數據會覆蓋前面的JSON數據。這個方法適用于所有類型的JSON數據合并,我們只需將要合并的JSON數據轉為JavaScript對象,然后使用Object.assign()方法就可以實現。
上一篇用css 控制圖片大小
下一篇2個json數據合并成