浅析angular.bind

简单来说angular.bind函数是用来返回一个自己设定参数的函数。它有三个参数,其中第三个参数是可选的。第二个参数是被绑定的函数fn,第一个参数是第二个参数fn的上下文对象,用this调用。
使用方法:

  1. self(对象):fn的上下文对象,可用this调用
  2. fn(函数):被绑定的函数
  3. arg(*):可以用来绑定给fn的参数

返回值:
被绑定参数的函数
举个例子

      var self = {name:'Jack'};
      //示例1--带参数
      var f = angular.bind(self, //绑定对象,作为函数的上下文
        //被绑定的函数
        function(age){  
          console.log(this.name + ' is ' + age + ' !');
        },
        //绑定的参数,可省略
        '15'
      );        
      //示例2--不带参数
      var m = angular.bind(self, //绑定对象,作为函数的上下文
        //被绑定的函数
        function(age, sex){  
          console.log(this.name + ' is ' + age + ', he is a ' + sex + ' !');
        }
        //省略参数
      );
      f();//调用绑定之后的function
      m(3,'male');//调用传参的函数    

示例1相当于是把参数放进angular.bind()里面的第三个参数,示例2是把参数直接放入m3()里面。
angular.bind

发表评论

电子邮件地址不会被公开。 必填项已用*标注