給定數(shù)組[54,65,43,21,12,34,45,58,97,24],求其最大值和最小值?
定義數(shù)組
var ary = [54,65,43,21,12,34,45,58,97,24];
1、字符串拼接法
利用toString和join把數(shù)組轉(zhuǎn)換為字符串,再和Math的max和min方法分別進行拼接,最后執(zhí)行eval方法
var maxN = eval("Math.max(" + ary.toString() + ")");var minN = eval("Math.min(" + ary.toString() + ")");或者
var maxN = eval("Math.max(" + ary.join() + ")");var minN = eval("Math.min(" + ary.join() + ")");2、排序法
先把數(shù)組從小到大排序,數(shù)組第一個即為最小值,最后一個即為最大值
ary.sort(function(a,b){return a-b;});var minN = ary[0];var maxN = ary[ary.length-1];3、假設(shè)法
假設(shè)數(shù)組第一個為最大(或最小值),和后邊進行比較,若后邊的值比最大值大(或比最小值小),則替換最大值(或最小值)
var maxN = ary[0];var minN = ary[0];for(var i=1;i<ary.length;i++){ var cur = ary[i]; cur>maxN ? maxN=cur : null; cur<minN ? minN=cur : null;}4、Math的max和min方法
使用apply方法使數(shù)組可以作為傳遞的參數(shù)
var maxN = Math.max.apply(null,ary);var minN = Math.min.apply(null,ary);
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持武林網(wǎng)!
新聞熱點
疑難解答