我试图获取数组中5个最小值的索引。
我已经尝试过下面的代码,但是它给出了错误:Math.min.apply(...)。indexOf不是一个函数。我只是不确定我可以用作替代品吗?
var smallest = [];
for (var i = 0, length = distances.length; i < length; i++) {
var min = Math.min.apply(null,distances).indexOf();
if (smallest.length <= 5) {
smallest.push(min);
}
console.log(smallest);
}
谢谢!
最佳答案
您可以获取键,将其与值进行排序,然后排在前五位。
var indices = [...distances.keys()]
.sort((a, b) => distances[a] - distances[b])
.slice(0, 5);