JavaScript中Math.max.apply()和Math.max()的区别
JavaScript中Math.max()方法可以求出给定参数中的最大值,给定参数≥2个,可以使多个,但是必须是数字。
> Math.max(1,2,3,5,9,4); < 9 > Math.min(1,0,-1); < -1
但是如果直接求数组中所有数字的最大值,就不能直接这么使用了,此时就需要使用到apply方法:
apply方法(Function)(JavaScript)
调用函数,并用制定对象替换函数的this值,同时用指定数组替换函数的参数。
apply([thisObj],[argArray]);
thisObj 可选。要用作this对象的对象。
argArray 可选。要传递到函数的一组参数。
如下代码调用Math.max()和Math.min()。
> Math.max.apply(null,[1,2,3,6,99,8,5,1111]); < 1111 > Math.min.apply(null,[1,0,-1]); < -1
其作用就是把数组一个一个拆分开来,然后在传递到Math.max()方法中,从而实现了传递数组。