获取字典nodejs中的最大值键

时间:2018-06-06 14:51:51

标签: javascript node.js dictionary

我想使用nodejs获取字典中最大值的键。 这就是我所做的,但它返回的最大值不是键。

var b = { '1': 0.02, '2': 0.87, '3': 0.54, '4': 0.09, '5': 0.74 };

var arr = Object.keys( b ).map(function ( key ) { return b[key]; });
var max = Math.max.apply( null, arr );
console.log(max);

知道该怎么做吗?

2 个答案:

答案 0 :(得分:0)

let index, max = 0;

for(const [key, value] of Object.entries(b)) {
  if(value > max) {
    max = value;
    index = key;
  }
}

console.log(index);

您可能只想使用键/值对来简化此操作。或者更基本的方法:

{{1}}

答案 1 :(得分:0)

首先从对象中找到最高值,然后在var b = { '1': 0.02, '2': 0.87, '3': 0.54, '4': 0.09, '5': 0.74 }; var highestVal = Math.max.apply(null, Object.values(b)), val = Object.keys(b).find(function(a) { return b[a] === highestVal; }); console.log(val)&上使用数组查找方法。返回元素



iterator