老师,deepMerge 若两个对象有同一个属性的话
来源:9-3 合并配置的设计与实现 - 配置合并策略(下)

渴望做梦
2019-06-30
如果传递的两个对象,甚至多个对象,有相同的属性的话,根据这个方法的逻辑来看后来的属性会覆盖前面的属性值,是这样吧?
写回答
1回答
-
如果是普通值,则直接赋值,如果是对象,则递归执行 deepMerge,可以通过一个测试用例看。
test('should deepMerge recursively', function() {
const a = { foo: { bar: 123 } }
const b = { foo: { baz: 456 }, bar: { qux: 789 } }
const c = deepMerge(a, b)
expect(c).toEqual({
foo: {
bar: 123,
baz: 456
},
bar: {
qux: 789
}
})
})112019-07-06
相似问题