3.apply()方法
apply()方法有两个参数,用作this的对和要传递给函数的参数数组。
function sayColor(sPrefix,sSuffix){
alert(sPrefix+this.color+sSuffix)
};
var obj=new Object();
obj.color="red";
sayColor.apply(obj,new Array("The color is "," a very nice color indeed."));
用法和call()基本相同,只是调用的参数不同,第一个参赛认识obj(this),说明赋予sayColor()中的this关键字是obj。
第二个参数是由两个字符串构成的数组,与sayColor()的参数sPrefix,sSuffix匹配。生成的消息仍是"The color is red a
very nice color indeed."将被显示出来。
一个可以把this的整个arguments对象作为第二个参数传递给apply()方法。当然,只有超类中的参数顺序与子类的参数
顺序完全一致才可以传递参数对象。如果不是就必须创建一个单独的数组,按照正确的顺序放置参数。此外还可以用call()方法。