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


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


Lodash _.bindAll()方法用于绑定对象上的多种方法。每个方法都有一个方法名称。使用事件处理程序很方便。

用法:

_.bindAll(object, methodNames)

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

  • object:它是包含不同方法和函数的对象。
  • methodNames:它是对象中存在的方法的名称。

返回值:它返回一个对象。

注意:此方法未设置绑定函数的“length”属性。



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

范例1:

Javascript

<!DOCTYPE html> 
<html> 
 
<head> 
    <script src=
"https://cdn.jsdelivr.net/npm/lodash@4.17.11/lodash.min.js">
    </script>
</head> 
 
<body> 
    <button id="button">button</button> 
 
    <script type="text/javascript"> 
 
        var object={ 
                label :'GeeksforGeeks', 
                click:function(){ 
                    console.log( 'clicked:' + this.label); 
                    }, 
                hover:function(){ 
                    console.log( 'hovering:' + this.label); 
                    } 
                }; 
 
        // Using bindAll() method of lodash 
        _.bindAll(object, 'click', 'hover'); 
 
        // When the button is clicked,  
        // this.label will have the correct value.
        let btn=document.querySelector("#button"); 
         
        btn.addEventListener('click', object.click); 
        btn.addEventListener('click', object.hover);  
    </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> 
    <button id="button">button</button> 
    <script type="text/javascript">  
        var object={ 
            printNum:()=>{ 
                for(let i=0; i<5; i++) 
                    console.log(i+" geeksforgeeks") 
                }, 
            func:function(){ console.log( 
                'Function:' + this.printNum); 
                }, 
            output:function(){ "Output:"+this.printNum(); 
                } 
            }; 
         
        // Using bindAll() methof of lodash 
        _.bindAll(object, 'func', 'output'); 
 
        // When the button is clicked  
        let btn=document.querySelector("#button"); 
         
        btn.addEventListener('click', object.func); 
        btn.addEventListener('click', object.output); 
    </script> 
</body> 
 
</html>

输出:

参考:https://docs-lodash.com/v4/bind-all/

相关用法


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