san*_*oco 3 javascript arrays associative-array
想象一个这样的对象:
var values = {
"2": 1,
"53": 2,
"56": 4,
"57": 9,
"61": 2,
"62": 16,
"63": 2,
"398": 24,
...
}
Run Code Online (Sandbox Code Playgroud)
我的目标是找到具有最高值的 10 个对象键。在这种情况下:398,然后是 62,依此类推(=[398, 62, ...] )。我知道如何将其放入数组中,但不知道如何接收属性键。
重要提示:我无法更改格式,因为它是服务器响应。
我尝试了一个for (key in values) {}循环,但不知道如何继续。
这个类似的问题及其答案也不能真正帮助我。
正如之前评论的:
Object.keys(object)sort((a,b)=> object[b] - object[a])keys.slice(0,n)var value = {2:1,53:2,56:4,57:9,61:2,62:16,63:2,398:24};
function getKeysWithHighestValue(o, n){
var keys = Object.keys(o);
keys.sort(function(a,b){
return o[b] - o[a];
})
console.log(keys);
return keys.slice(0,n);
}
console.log(getKeysWithHighestValue(value, 4))Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5877 次 |
| 最近记录: |