当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Lodash _.assignWith()用法及代码示例


lodash中Object的_.assignWith()方法与_.assign方法相似,唯一的区别是它接受为生成分配值而调用的定制程序。此外,如果此处使用的定制程序返回未定义,则该分配将由方法处理。

注意:

  • 可以使用五个自变量调用此处使用的定制器,即objValue,srcValue,键,对象和源。
  • 通过此方法可以更改此处使用的对象。

用法:

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

参数:此方法接受上述和以下所述的三个参数:

  • object:它是目标对象。
  • sources:它是对象的来源。
  • customizer:它是自定义分配值的函数。

返回值:此方法返回对象。



以下示例说明了JavaScript中的Lodash _.assignWith()方法:

范例1:

Javascript

// Requiring lodash library 
const _ = require('lodash'); 
  
// Defining a function customizer 
function customizer(objectVal, sourceVal) { 
  return _.isUndefined(objectVal) ? sourceVal:objectVal; 
} 
  
// Calling assignWith method with its parameter 
let obj = _.assignWith({ 'geeksforgeeks':13 },  
                       { 'GFG':4 }, customizer); 
  
// Displays output  
console.log(obj);

输出:

{ geeksforgeeks:13, GFG:4 }

范例2:

Javascript

// Requiring lodash library 
const _ = require('lodash'); 
  
// Defining a function customizer 
function customizer(objectVal, sourceVal) { 
  return _.isUndefined(objectVal) ? sourceVal:objectVal; 
} 
  
// Defining a function Num1 
function Num1() { 
  this.i = 11; 
} 
  
// Defining a function Num2 
function Num2() { 
  this.j = 12; 
} 
   
// Defining prototype of above functions  
Num1.prototype.k = 13; 
Num2.prototype.l = 14; 
  
// Calling assignWith method with its parameter 
let obj = _.assignWith({ 'i':10 },  
          new Num1, new Num2,customizer); 
  
// Displays output  
console.log(obj);

输出:

{ i:10, j:12 }

参考: https://lodash.com/docs/4.17.15#assignWith

相关用法


注:本文由纯净天空筛选整理自nidhi1352singh大神的英文原创作品 Lodash _.assignWith() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。