当前位置: 代码迷 >> JavaScript >> apply(null,array_of_numbers) null代表什么?解决办法
  详细解决方案

apply(null,array_of_numbers) null代表什么?解决办法

热度:630   发布时间:2012-02-08 19:52:21.0
apply(null,array_of_numbers) null代表什么??????
如果是   null   的话     列如     Math.max.apply(null,array_of_numbers)

是不是变成了     null.max(....)?

------解决方案--------------------
很容易理解,主要是你还不理解apply的使用

a=[10,20,30]
alert(Math.max(10,20,30))
alert(Math.max.apply(null,a))

看看这个。
因为Math.max传递的参数不能为数组,为了方便,可以用apply方法来实现用数组的参数来传递,这是很多时候运用的一个小技巧罢了。而第一个参数,是要替代的对象。没有要替代的,用null,也是很自然的。当然你也可以用call方法,如果用call方法,就和直接调用Math.max一样了,call和apply的功能是一样的。

再比如:
function foo () {
bar.apply(null,arguments);
}

function bar () {
for (var i=0; i <arguments.length; i++) {
alert(arguments[i]);
}
}

foo( "I ", "am ", "never-online ")
  相关解决方案