如何在ES6 +中将两个javascript对象合并在一起?
我厌倦了总是不得不编写这样的代码:
function shallowExtend(obj1,obj2){ var key;
for ( key in obj2 ) {
if ( obj2.hasOwnProperty(key) === false ) continue;
obj1[key] = obj2[key]
}
}
或者,如果我不想自己编写代码,请实现一个已经执行过的库。ES6 +肯定会在这方面获救,这将为我们提供类似a
Object.prototype.extend(obj2...)
或Object.extend(obj1,obj2...)
那么ES6 +是否提供这种功能?如果尚不存在,那么是否计划了此类功能?如果没有计划,那为什么不呢?
回答:
您将可以通过使用Object.assign在ES6中进行浅合并/扩展/分配:
Object.assign( target , sources );
其中 … sources 表示源对象。
var obj1 = {name: 'Daisy', age: 30};var obj2 = {name: 'Casey'};
Object.assign(obj1, obj2);
console.log(obj1.name === 'Casey' && obj1.age === 30);
// true
以上是 如何在ES6 +中将两个javascript对象合并在一起? 的全部内容, 来源链接: utcz.com/qa/422063.html