分配/扩展采用源中的每个属性,将其值原样复制到目标。如果属性值本身是对象,则不会对其属性进行递归遍历。这也称为浅复制/克隆。整个对象将从源中取出并放入目的地。
合并采用源中的每个属性,检查该属性是否是对象本身。如果它随后递归下降,并尝试将子对象属性从源映射到目标。
let _ = require('lodash');
let destination = {
a: {
b: 1,
c: 2
},
};
let source = {
a: {
d: 2,
c: 3
},
};
console.log(_.merge(destination, source));
console.log(_.extend(destination, source));输出结果
这将给出输出-
{ a: { b: 1, c: 3, d: 2 } }
{ a: { d: 2, c: 3 } }