如何在数组中找到第二高的数字
答案 0 :(得分:2)
function getSecondHighest(arrCheck){
var first=0,second=0;
for(var i=0;i<arrCheck.length;i++){
if(arrCheck[i] > first){
second = first;
first = arrCheck[i];
}
else if(arrCheck[i]>second && arrCheck[i]<first){
second = arrCheck[i];
}
}
return second;
}
答案 1 :(得分:1)
如果你经历一次列表;你会找到最高的数字。 现在重复这一次,你将获得第二高的数字。
答案 2 :(得分:1)
function max(a){
var big = a[0];
var secondLargest =null;
for(var i=0;i<a.length;i++){
if(a[i]>big){
secondLargest = big;
big=a[i];
}else if(a[i]>secondLargest){
secondLargest =a[i];
}
}
return secondLargest;
}
答案 3 :(得分:0)
见:
var array = [267, 306, 108, 50, 909, 200];
var newCopy = [0];
for (i = 0; i < array.length; i++) {
newCopy[i] = array[i];
}
var largest = Math.max.apply(Math, newCopy);
newCopy.splice(newCopy.indexOf(largest), 1);
largest = Math.max.apply(Math, newCopy);
alert(largest);