javascript獲取數組中的最大值

javascript獲取數組中的最大值

這種功能的代碼,想實現可能比較簡單,那我爲什麼要專門寫個博客記錄一下呢?
我只是在學習微信小程序開發的時候看到一段代碼,感覺比較好,在這裏記錄一下;

var array = [15,45,78,98,56,2];
function getMax(array){
	var max = undefined;
	for(var i=0;i<array.length;i++){
		max = max === undefined ? array[i] : (max>array[i] ? max : array[i])
	}
	return max;
}

var num = getMax(array);
console.log(num);

具體的實現代碼如上所示

在for循環中,利用了運算符之間的優先級關係,等號是最後運算的
所以先計算, max === undefined返回值是多少
第一次運算,肯定是返回true啊,所以就執行 max=array[0]
第二次運算的時候,max的值是數組的第一項,所以 max===undefined就返回false,所以就執行代碼(max > array[i] ? max : array[i])
判斷當前的max值和數組的下一項,那個大,將大的返回,賦值給max,然後進行下一次循環,直到找出最大值爲止

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章