一提到求数组的最大值,很快有人就写出了如下代码
var a = [1,2,3,4,5,3,10,6,7,8];
findMax(a); //10
function findMax(arr){
var max = arr[0];
for(let i=1 ;i<arr.length; i++){
if(arr[i]>max){
max=arr[i];
}
}
return max;
}
的确上面的代码能求出数组内的最大值,也是最容易想到的,但是还有一种最简单的方法,只需要一行代码就搞定
var a = [1,2,3,4,5,3,10,6,7,8];
Math.max.apply(null,a);//10,
apply是一个用于改变函数的调用者的函数。
另外Es6有个更简单的方法,那就是使用剩余参数的方法
var a = [1,2,3,4,5,3,10,6,7,8];
Math.max(...a);// 10 js引擎会自动将a数组拆分