在 ASP Classic 脚本中,我有一个循环。在每个记录集中都有一个名为“portos”(7、4、12)的数组,我需要在其中转发最高值和第二高值。
现在我得到最大值并将其传递到一个链接:
<script type="text/javascript">
var v=[<%=portos %>]
var porto=parseInt((Math.max.apply(0,v)), 10);
document.links["link"].href += porto;
</script>
<a id="link" href="somepage.asp?maxv=">Link</a>
不幸的是它只能在循环之外工作。在里面我得到了第一个记录集中的所有数字,而其他记录集中没有。这是一个问题。另一个在标题中:如何将第二高的值放入链接?
我对 Java 完全是菜鸟,几天来一直在思考这个问题......请帮忙!
最佳答案
可能最简单的解决方案是将数组从最高到最低排序,然后获取前两个成员:
// Array might be numbers or strings or a bit of both
var x = ['123', '14', 7, 4, '12', -3];
// Sort numbers from higest to lowest
function sortNumReversed(a, b) {
// Ensure a and b are numbers, lots of ways to do this
a = Number(a), b = Number(b);
// Return result of comparison
return b == a ? 0 : b < a? -1 : 1;
}
x.sort(sortNumReversed);
alert('Highest: ' + x[0] + '\nSecond highest: ' + x[1]);
关于javascript - 使用 Java 在 asp(经典)循环期间查找数组中的第二个最高值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14697693/