今天在学习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));//最小值