JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法


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

« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3