1、排序法
先对数组进行排序,可以按照从小到大的顺序来排,然后返回数组中的第一个数和最后一个数。
var arr = [12,56,25,5,82,51,22];
arr.sort(function(a,b){
return a - b;
});
var min = arr[0];
var max = arr[arr.length-1];
console.log(min);
console.log(max);复制代码
2、假设法
假设第1个元素是最大值或者是最小值,遍历数组,找数组中大于max的数,或者是小于min的数,更新max和min值。
var arr = [12,56,25,5,82,51,22];
function findMainAndMax(arr){
var min = arr[0];
var max = arr[0];
for(var i = 1; i < arr.length; i++){
arr[i] > max ? max = arr[i] : max;
arr[i] < min ? min = arr[i] : min;
}
console.log(min);
console.log(max);
}
findMainAndMax(arr);复制代码
3、Math的max和min方法
var arr = [12,56,25,5,82,51,22];
var max = Math.max.apply(null,arr);
var min = Math.min.apply(null,arr);
console.log(max);
console.log(min);复制代码
4、ES6
var arr = [12,56,25,5,82,51,22];
var max = Math.max(...arr);
var min = Math.min(...arr);
console.log(max);
console.log(min);复制代码