js基本功——apply call bind方法

apply(obj,argArr)

作用:替换函数的this指向

obj:  调用该方法的函数的this要指向的对象

argArr  调用该方法的函数需要传入的参数组成的数组

 

call(obj,arg1,arg2,...)

作用于apply一样,不过传入参数是一个个传,而不是作为数组传

 

bind(obj)

作用一样,但只传入obj对象用于this绑定,本身不会运行调用它的函数。

1      var str1 = " ";
2      var str2 = "world";
3      var a = function(s1,s2){
4          console.log(this.name+s1+s2);
5      }
6      var b = {name:'hello'};
7      a.apply(b,[str1,str2]);
8   a.call(b, str1, str2);
9    a.bind(b)(str1,str2);
posted @ 2019-12-13 14:56  anch  阅读(98)  评论(0)    收藏  举报