分配/扩展采用源中的每个属性,将其值原样复制到目标。如果属性值本身是对象,则不会对其属性进行递归遍历。这也称为浅复制/克隆。整个对象将从源中取出并放入目的地。
合并采用源中的每个属性,检查该属性是否是对象本身。如果它随后递归下降,并尝试将子对象属性从源映射到目标。
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 } }