call方法
常用于借用其他函数对象的方法
第一个参数是改变方法的this,传入一个新的对象
其他参数是原方法传入的参数
返回值就是函数的返回值
apply方法
常用于借用其他函数对象的方法,但是传入的是数组,类似于
Math.max.apply( Math,[] );
借用的是Math对象的最大值方法,然后返回最大值
bind方法
改变函数方法的this指向,无函数返回值
例如
var obj = {
name: "ls";
function() {
setInterval(function) {
console.log(this.name);
}.bind(this), 1000);
}
}
改变了function中this.name的指向,原来这里的this指的是window对象,这里利用bind改成了obj对象