Lodash - assignWith 方法



语法

_.assignWith(object, sources, [customizer])

该方法类似于 _.assign,但它可以接受 customizer,该方法被调用以生成已分配的值。如果 customizer 返回 undefined,则改由该方法处理赋值。customizer 会使用五个参数进行调用:(objValue, srcValue, key, object, source)。

参数

  • object (对象) - 目标对象。

  • sources (...对象) - 源对象。

  • [customizer] (函数) - 用于自定义已分配值的函数。

输出

  • (对象) - 返回对象。

示例

var _ = require('lodash');
function customizer(objValue, srcValue) {
   return _.isUndefined(objValue) ? srcValue : objValue;
}
var defaults = _.partialRight(_.assignWith, customizer);
console.log(defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }));

将上述程序保存到 tester.js 中。运行以下命令以执行该程序。

命令

\>node tester.js

输出

{ a: 1, b: 2 }
lodash_object.htm
广告