call()
语法:
myFunction.call(thisObj,参数1,参数2…)
定义:
调用某对象的一个方法,以另一个对象替换当前对象
举例:
B(.method).call(A,args1,args2);
为A对象调用B对象的方法,B中方法有两个参数args1、args2
说明:
可以继承B方法中所有方法和属性
apply()
语法:
myFunction.apply(thisObj,[a1,a2,a3])
定义:
应用某对象的一个方法,用另一个对象替换当前对象
举例:
B.apply(A,arguments);
为A对象调用B对象的方法,B中参数必须为数组或者伪数组
call()与apply()区别
1、call()从第二个参数开始一次传入,apply()传入的是参数数组
2、apply()可以将当前函数的arguments对象作为apply的第二个参数传入
bind()
语法:
myFunction.bind(thisObj,参数1,参数2…)();
定义:
返回一个方法