我需要获取数组连接中最大值的索引。此数组用于将值输出到表中,我需要能够将此表中的单元格设置为最大值为红色。以下是我到目前为止的情况:
pip install pycryptodome
我如何找到连接数组中最大值的索引并将cells []的位置设置为它。我已经尝试使用循环和if语句来查找值,但是我在将该值从循环中取出时遇到了麻烦。
答案 0 :(得分:3)
您可以使用以下内容:
var largest_number = Math.max.apply(Math, my_array);
var largest_index = my_array.indexOf(largest_number);
答案 1 :(得分:1)
var maxvalue = Math.max.apply(null, connections);
var maxvalueindex = connections.indexOf(maxvalue);
参考文献:http://www.jstips.co/en/calculate-the-max-min-value-from-an-array/
答案 2 :(得分:1)
只需将Math.max
应用于数组即可获得最大值。但是如果你想要它的索引,你必须做更多的工作。
最直接的方法是做这样的事情:
connections.indexOf(Math.max.apply(Math, connections))
如果你想提高效率(因为它遍历数组两次),你可以编写自己的缩减:
maxConnIndex = connections.reduce(function(curMax, curVal, curIdx) {
let [maxVal, maxIdx] = curMax
if (curVal > maxVal) {
maxVal = curVal
maxIdx = curIdx
}
return [maxVal, maxIdx]
}, [connections[0],0])[1];
答案 3 :(得分:0)
简单易用,高效的代码:
function maxIndex(array) {
var idx, max=-Infinity;
for (var i=array.length;i--;) {
if (array[i]>max) {
max = array[i];
idx = i;
}
}
return idx;
}