今天在學習js中的數組時,遇到的輸出一個數組中最大、最小值以及它們的下表,以下是自己的解決方法!
<script type="text/javascript"> var arr = [14, 14, 53, 14, 14, 53, 67, 67]; var max = arr[0],min = arr[0]; var maxIndex = []; maxIndex[0] = 0; var minIndex = []; minIndex[0] = 0; var j = 1, k = 1; for(var i = 1; i < arr.length; i ++){ if(max < arr[i]){ max = arr[i]; maxIndex[0] = i; } if(min > arr[i]){ min = arr[i]; minIndex[0] = i; } } for(var i = 0; i < arr.length; i ++){ if(max == arr[i]){ maxIndex[j] = i; j ++; } if(min == arr[i]){ minIndex[k] = i; k ++; } } document.write("最大值為:" + max + "<br />"); document.write("最小值為:" + min + "<br />"); for(var i = 1; i < minIndex.length; i ++){ document.write("最小值的下標為:" + minIndex[i] + "<br />"); } for(var i = 1; i < maxIndex.length; i ++){ document.write("最大值的下標為:" + maxIndex[i] + "<br />"); } </script>
下面給大家介紹js中如何快速獲取數組中的最大值最小值
var a=[1,2,3,5]; alert(Math.max.apply(null, a));//最大值 alert(Math.min.apply(null, a));//最小值
多維數組可以這麼修改:
var a=[1,2,3,[5,6],[1,4,8]]; var ta=a.join(",").split(",");//轉化為一維數組 alert(Math.max.apply(null,ta));//最大值 alert(Math.min.apply(null,ta));//最小值