文章目录

1. 排序法
compareMaxMin() {
const arr = [12, 56, 25, 5, 82, 51, 22, 100, 2];

arr.sort(function (a, b) {
return a - b;
}); // [5,12,22,25,51,56]

const min = arr[0]; // 5
console.log("最小值->min", min)
const max = arr[arr.length - 1]; // 56
console.log("最大值->max", max)
},
2. 假设法

假设当前数组中的第一个值是最大值,然后拿这个最大值和后面的项逐一比较,如果后面的某一个值比假设的值还大,说明假设错了,我们把假设的值进行替换。最后得到的结果就是我们想要的。

// 获取最大值:

var arr = [22,13,6,55,30];
var max = arr[0];

for(var i = 1; i < arr.length; i++) {
var cur = arr[i];
cur > max ? max = cur : null
}

console.log(max); // 55

// 获取最小值:

var arr = [22,13,6,55,30];
var min = arr[0];

for(var i = 1; i < arr.length; i++) {
var cur = arr[i];
cur < min ? min = cur : null
}
console.log(min) // 6
3. 使用 Math 中的 max/min 方法

可以使用apply来实现。apply传入的是一个数组。

var arr = [22,13,6,55,30];

var max = Math.max.apply(null, arr);
var min = Math.min.apply(null, arr);

console.log(max, min) // 55,6
4. 使用ES6的扩展运算符
= [22,13,6,55,30];

console.log(Math.max(...arr)); // 55