从Object获取最大的密钥

时间:2017-06-23 08:30:30

标签: javascript typescript

我有一个对象{"1": "a", "2": "b", "3": "c"} 我怎么能得到最大密钥? 我不需要一个值,只需要密钥,所以我希望有3个类型编号

3 个答案:

答案 0 :(得分:7)

使用Object.keys获取所有键值,并使用Math.max方法使用Function#apply方法获取最大值。



var obj = {
  "1": "a",
  "2": "b",
  "3": "c"
};

console.log(
  Math.max.apply(null, Object.keys(obj))
)

// or with ES6 spread syntax
console.log(
  Math.max(...Object.keys(obj))
)




答案 1 :(得分:1)

以下是使用键上reduce()的替代方法:

var data = {"1": "a", "2": "b", "3": "c"};
var max = Object.keys(data).reduce(function(a, b) { 
    return a > +b ? a : +b;
});

console.log(max);

答案 2 :(得分:0)



var data = {"1": "a", "2": "b", "3": "c"}
var max = 0;

for (var property in data) {
  max = (max < parseFloat(property)) ? parseFloat(property) : max;
}

console.log(max);
&#13;
&#13;
&#13;

相关问题