apply call 从字面意思就看出来,申请请,呼叫.
打个比方就是别人有什么功能,你向别人,申请 呼叫 一下,哥们拿你的功能用一下,而apply 和call就是实现这样的功能
apply 和call 是一样的功能,只不过传入的参数有一点点区别
被呼叫的对象.某方法.call(呼叫人,'参数1',’参数学‘,'参数n')
被呼叫的对象.某方法.apply(呼叫人,[]) //[]表示数组对象
好了,下面上一例子来理解一下 call 和apply
//定义一个animal类 function Animal(){ this.showAge=function(age){ alert('我的年龄是'+age); } } //定义一个Cat和Bird function Cat(){ } function Brid(){ } //创建两个类对象 var an=new Animal(); var ca=new Cat(); var bd=new Brid(); an.showAge(20); an.showAge.call(ca,21); an.showAge.apply(ca,[201]);