Lodash - mergeWith 方法
语法
_.mergeWith(object, sources, customizer)
此方法类似于 _.merge,不同之处在于它接受 customizer, customizer 用于生成目标属性和源属性的合并值。如果 customizer 返回未定义,则方法负责合并。customizer 会使用六个参数调用:(objValue, srcValue, key, object, source, stack)。
参数
object (Object) − 目标对象
sources (...Object) − 源对象
customizer (Function) − 自定义分配值的函数
输出
(Object) − 返回对象
示例
var _ = require('lodash'); var object = { 'a': [{ 'b': 2 }, { 'd': 4 }] }; var other = { 'a': [{ 'c': 3 }, { 'e': 5 }] }; function customizer(objValue, srcValue) { if (_.isArray(objValue)) { return objValue.concat(srcValue); } } console.log(_.mergeWith(object, other, customizer));
将以上程序保存在 tester.js 中。运行以下命令以执行此程序。
命令
\>node tester.js
输出
{ a: [ { b: 2 }, { d: 4 }, { c: 3 }, { e: 5 } ] }
lodash_object.htm
广告