1. 程式人生 > >JavaScript中Math.max.apply()和Math.max()的區別

JavaScript中Math.max.apply()和Math.max()的區別

作用 div 調用 class color his arr array this

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()方法中,從而實現了傳遞數組。

JavaScript中Math.max.apply()和Math.max()的區別