當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。