我有一个已排序的字典,其中包含一定数量的条目:
dict = {B:3, A:2, C:2, D:1, E:0, F:0...}
是否有任何方法可以过滤字典以查找具有前 3 个最大值的条目,同时考虑重复值,以便输出为? :
output = {B:3, A:2, C:2, D:1}
感谢您的阅读..
最佳答案
您可以使用Set
来计算不同的值并过滤有序条目以从中获取对象。
const
object = { B: 3, A: 2, C: 2, D: 1, E: 0, F: 0 },
result = Object.fromEntries(Object
.entries(object)
.sort(([, a], [, b]) => b - a) // just to be sure
.filter((s => ([, v]) => s.add(v).size <= 3)(new Set))
);
console.log(result);
关于javascript - 在排序的 JavaScript 字典中查找前 3 个值条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70295308/