我有两个这样的对象,并想将它们合并:
const obj1 = {
1: { foo: 1 },
2: { bar: 2, fooBar: 3 },
3: { fooBar: 3 },
};
const obj2 = {
1: { foo: 1, bar: 2 },
2: { bar: 2 },
};
const merged = someMergingMethod(obj1, obj2);
merged === {
1: { foo: 1, bar: 2 },
2: { bar: 2, fooBar: 3 },
3: { fooBar: 3 },
};
我的意思是,我希望不仅合并对象本身,而且如果键重复,还要合并它们的属性值。
因为使用merged = { ...obj1, ...obj2 };
只会覆盖obj2的属性。
最简单的方法是什么?
我可以使用ES2017和其他库,如lodash。
obj1.2.bar
是2但是obj2.2.bar
是3,应该发生什么?无论如何,它都应该被关闭为“过于宽泛”,因为SO不是一个免费的代码编写服务。 - user5734311