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


Lodash _.cloneDeepWith()用法及代碼示例

Lodash _.cloneDeepWith()方法用於以遞歸方式克隆值,與_.cloneWith()方法相同,但以遞歸方式執行。

用法:

_.cloneDeepWith( value, customizer )

參數:此方法接受上麵提到和下麵描述的兩個參數:

  • value:此參數保存將以遞歸方式克隆的值。
  • customizer:此參數具有自定義克隆的函數。

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

下麵的示例說明了Lodash _.cloneDeepWith()方法:



範例1:克隆頭元素。

Javascript

<!DOCTYPE html> 
<html> 
 
<head> 
    <script src=
"https://cdn.jsdelivr.net/npm/lodash@4.17.11/lodash.min.js">
    </script>
</head> 
 
<body> 
    <script type="text/javascript"> 
 
        function customizer(value) {
            if (_.isElement(value)) {
                return value.cloneNode(true);
            }
        }
  
        var gfg = _.cloneDeepWith(document.head, customizer);
          
        console.log(gfg === document.head);
        console.log(gfg.nodeName);
        console.log(gfg.childNodes.length); 
        console.log(gfg);
    </script> 
</body> 
 
</html>

輸出:

範例2:克隆體元素。

Javascript

<!DOCTYPE html> 
<html> 
 
<head> 
    <script src=
"https://cdn.jsdelivr.net/npm/lodash@4.17.11/lodash.min.js">
    </script>
</head> 
 
<body> 
    <script type="text/javascript"> 
 
        function customizer(value) {
            if (_.isElement(value)) {
                return value.cloneNode(true);
            }
        }
          
        var gfg = _.cloneDeepWith(document.body, customizer);
          
        console.log(gfg === document.body);
        console.log(gfg.nodeName);
        console.log(gfg.childNodes.length);
        console.log(gfg);
    </script> 
</body> 
 
</html>

輸出:

參考:https://docs-lodash.com/v4/clone-deep-with/

相關用法


注:本文由純淨天空篩選整理自skyridetim大神的英文原創作品 Lodash _.cloneDeepWith() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。