写在前面的话
这三个方法都是来自Function.prototype上,所以所有的函数都可以使用。
他们有一个共同点,就是可以指定函数执行时的内部this指向。
call和apply的区别在于参数的方式。
bind和前两个的区别在于,bind不会马上执行函数,而是返回一个函数,供以后调用。
call
语法:函数名.call(this指向,实参1,实参2...)
apply
语法1:函数名.apply(this指向,[实参1,实参2...])
语法2:函数名.apply(this指向,{0:实参1,1:实参2})
bind
语法:var fn = 函数名.bind(this指向,绑定的参数1,绑定的参数2...);