js中求数组的最大值与最小值

时间:2021-07-02 15:12:06

主要是利用Math.max()与Math.min()方法,这里统一以求最大值为例:

  • 最原始的方法,循环:
function max(arr){
var max = arr[0];
for(var i=1;i<arr.length;i++){
max = Math.max(max,arr[i]);
}

return max;
}
  • reduce
    也是遍历,但是另一种写法:
function max(arr){
return arr.reduce(function(prev,curr){
return Math.max(prev,curr);
});
}
  • 排序
    先对数组排个序,那么最后一个就是最大值:
function max(arr){
arr.sort(function(a,b){
return a-b;
});
return arr[arr.length-1];
}
  • apply
Math.max.apply(null,arr);
  • ES6的扩展运算符:
Math.max(...arr);