取出數組中最大值或最小值是開發中常見的需求,今天繼續講解如何獲取javascript數組中最大和最小值。javascript
首先咱們給數組進行排序,能夠按照從小到大的順序來排,排序以後的數組中第一個和最後一個就是咱們想要獲取的最小值和最大值。java
排序咱們會用到數組的 sort 方法。es6
var arr = [12,56,25,5,82,51,22]; arr.sort(function (a, b) { return a-b; }); // [5,12,22,25,51,56] var min = arr[0]; // 5 var max = arr[arr.length - 1]; // 56
假設當前數組中的第一個值是最大值,而後拿這個最大值和後面的項逐一比較,若是後面的某一個值比假設的值還大,說明假設錯了,咱們把假設的值進行替換。最後獲得的結果就是咱們想要的。數組
// 獲取最大值: 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
可使用apply來實現。apply傳入的是一個數組。app
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
var arr = [22,13,6,55,30]; console.log(arr.Math(...arr)); // 55
若是你有更多方法,歡迎留言!code