这两个方法都是函数对象的方法,需要通过函数对象来调用,当对函数调用call()和apply()时,都会调用函数执行。
可以将一个对象指定为第一个参数,此时这个对象将会成为函数执行时的this.
function fun(){
alert(this);
}
var obj={
};
// fun.apply();
// fun.call();
// fun();
fun.apply(obj);
call()方法可以将实参在对象之后依次传递。
apply()方法需要将实参封装到一个数组中统一传递。
// fun.apply(obj,[2,3]);
fun.call(obj,5,8)