【发布时间】:2020-08-12 19:09:34
【问题描述】:
我正在尝试合并 2 个在其中一个元素中包含数组的对象。当使用扩展语法并且第一个对象数组被第二个对象数组替换时,我没有达到disered 的结果。对象如下:
const objectA1 = {
keyA1:'valueA1',
keyArr:[{
arrKeyA01:'arrValueA01',
arrKeyA02:'arrValueA02',
},
{
arrKeyA11:'arrValueA11',
arrKeyA12:'arrValueA12',
}
]
}
const objectB1 = {
keyB1:'valueB1',
keyArr:[{
arrKeyB01:'arrValueB01',
arrKeyB02:'arrValueB02',
},
{
arrKeyB11:'arrValueB11',
arrKeyB12:'arrValueB12',
}
]
}
我想得到:
const objectRes = {
keyA1:'valueA1',
keyB1:'valueB1',
keyArr:[{
arrKeyA01:'arrValueA01',
arrKeyA02:'arrValueA02',
arrKeyB01:'arrValueB01',
arrKeyB02:'arrValueB02',
},
{
arrKeyA11:'arrValueA11',
arrKeyA12:'arrValueA12',
arrKeyB11:'arrValueB11',
arrKeyB12:'arrValueB12',
}
]
}
我用的是
{...objectA1 ,...objectB1}
但如前所述,keyArr 不保留objectA1 元素。
如何合并两个对象并使用扩展语法保留数组数据?
感谢您的任何评论/帮助:)
【问题讨论】:
-
您需要明确说明您希望如何创建
keyArr属性。仅传播语法不会让您到达那里。
标签: javascript arrays object spread-syntax