js獲取數(shù)組的最大值

var arr = [10, 4, -2, 8, 26];

1. 基本方法:通過遍歷數(shù)據(jù)組

var max = arr[0];
for(var i=0; i<arr.length; i++){
    if( arr[i] > max ){
         max = arr[i]
    }
}
console.log(max) //返回 26

2. 變通方法:通過排序

//b-a從大到小,a-b從小到大
var max = arr.sort(function(a,b){
    return b-a;
})[0];
console.log(max) //返回 26

注意: sort()如果調(diào)用該方法時沒有使用參數(shù),將按字母順序?qū)?shù)組中的元素進(jìn)行排序,說得更精確點(diǎn),是按照字符編碼的順序進(jìn)行排序。
如果想按照其他標(biāo)準(zhǔn)進(jìn)行排序,就需要提供比較函數(shù),該函數(shù)要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數(shù)字。比較函數(shù)應(yīng)該具有兩個參數(shù) a 和 b,其返回值如下:
若 a 小于 b,在排序后的數(shù)組中 a 應(yīng)該出現(xiàn)在 b 之前,則返回一個小于 0 的值。
若 a 等于 b,則返回 0。
若 a 大于 b,則返回一個大于 0 的值。

3. 簡便方法:通過apply()

var max = Math.max.apply( null, arr );
console.log(max) //返回 26

由于max()里面參數(shù)不能為數(shù)組,所以借助apply(funtion,args)方法調(diào)用Math.max(),function為要調(diào)用的方法,args是數(shù)組對象,當(dāng)function為null時,默認(rèn)為上文,即相當(dāng)于apply(Math.max,arr)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,679評論 0 4
  • //Clojure入門教程: Clojure – Functional Programming for the J...
    葡萄喃喃囈語閱讀 4,044評論 0 7
  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,557評論 0 13
  • 一段舊往,幾許追憶。剪下那段舊往,置于安靜角落。那段供養(yǎng)于青春的舊往,至今還是那么清晰,還是那么芳郁。舊往...
    冰夫閱讀 392評論 0 0
  • 發(fā)現(xiàn)自己沒有勇氣面對甚至忽視掉自己人性的弱點(diǎn),把一切今天當(dāng)做今天,把一切過去當(dāng)做過去!結(jié)果某一天突然發(fā)現(xiàn)生活欺騙了...
    開荒girl閱讀 125評論 0 0

友情鏈接更多精彩內(nèi)容