繁体   English   中英

es6传播运算符未组合键对象

[英]es6 spread operator not combining keyed objects

我想建立一个带键对象的对象。

为什么散布运算符未按以下用法进行合并? 相反,它仅保留第二个对象。

 let a = { key1: { floo: 'blar' } } let b = { key2: { floo: 'blar' } } console.log(...a, b); 

最重要的是,请告诉我正确的方法!

谢谢

它应该是

console.log({...a, ...b});

上面将合并两个对象,并分别创建一个新的对象,其中key1key2 另外,请注意,对象的散布运算符与Object.assign()工作方式不同。

请注意,合并的对象只是一个引用。 例如,修改对象的值,例如

a.key1.floo = 'someotherval';

将改变a对象,并在合并的对象中反映出来。

有关更多信息,请参见在对象文字中传播部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM