bind实现原理

Function.prototype.bind2=function(context) {

    varself=this;

    //获取bind2函数从第二个参数到最后一个参数

    var args=Array.prototype.slice.call(arguments,1);

    return function() {

    //这个时候的arguments是指bind返回的函数传入的参数    

    var bindArgs=Array.prototype.slice.call(arguments);

    self.apply(context,args.concat(bindArgs)); 

     }

}

你可能感兴趣的:(bind实现原理)