我想要构建一个由键控对象组成的对象。
为什么扩展运算符不像下面所使用的那样组合?相反,它只保留第二个对象。
let a = {
key1: {
floo: 'blar'
}
}
let b = {
key2: {
floo: 'blar'
}
}
console.log(...a, b);
最重要的是,请告诉我正确的方法!
谢谢
发布于 2018-05-28 06:38:59
它应该是
console.log({...a, ...b});上面的内容将合并这两个对象,并分别使用key1和key2创建一个新对象。另外,请注意对象的扩展运算符的工作方式与Object.assign()不同。
注意,合并的对象只是一个引用。例如,修改对象的值,如
a.key1.floo = 'someotherval';将更改a对象,并在合并的对象中反映。
有关更多信息,请参阅对象文字部分中的传播。
https://stackoverflow.com/questions/50560448
复制相似问题