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


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


Lodash是一个JavaScript库,可在underscore.js之上运行。 Lodash帮助处理数组,字符串,对象,数字等。

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

注意:此处使用的定制器最多可以调用四个参数,即value,index | key,object和stack。

用法:

_.cloneWith(value, [customizer])

参数:此方法接受上面提到和下面描述的两个参数:



  • value:它是要比较的值。
  • customizer:这是要比较的另一个值。

返回值:此方法返回克隆的值。

范例1:

Javascript

// Requiring lodash library 
const _ = require('lodash'); 
  
// Creating a function customizer 
function customizer(val) { 
  if (_.isElement(val)) { 
    return val.cloneNode(false); 
  } 
} 
  
// Defining value parameter 
var value = [1, 2, 3]; 
  
// Calling cloneWith() method 
var cloned_value = _.cloneWith(value, customizer); 
  
// Displays output 
console.log(cloned_value);

输出:

[ 1, 2, 3 ]

范例2:

Javascript

// Requiring lodash library 
const _ = require('lodash'); 
  
// Creating a function customizer 
function customizer(val) { 
  if (_.isElement(val)) { 
    return val.cloneNode(false); 
  } 
} 
  
// Defining value parameter 
var value = ['Geeks', 'for', 'Geeks']; 
  
// Calling cloneWith() method 
var cloned_value = _.cloneWith(value, customizer); 
  
// Displays output 
console.log(cloned_value);

输出:

[ 'Geeks', 'for', 'Geeks' ]

范例3:使用isInteger()方法作为定制程序。

Javascript

// Requiring lodash library 
const _ = require('lodash'); 
  
// Creating a function int which acts as 
// customizer 
function int(x) { 
 if (_.isInteger(x)) { 
   return true; 
   } 
} 
  
// Calling cloneWith() method along with 
// its parameter 
var cloned_value = _.cloneWith({ gfg:5,  
        geeksforgeeks:6}, int); 
  
// Displays output 
console.log(cloned_value);

输出:

{ gfg:5, geeksforgeeks:6 }

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

相关用法


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