在Javascript中从Array获取n个最小数字的最有效方法是什么
[[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]
结果是
[1,13,32,1]
答案 0 :(得分:9)
试试Math.min()
。它获取数字并从中返回最小值。我使用map()函数迭代每个嵌套数组,然后将Math.min()
与...一起使用,这会破坏嵌套数组并将其传递给像Math.min(4,5,1,3)
这样的函数用于第一个嵌套一个
var arr = [[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]];
var minArr = arr.map(item => Math.min(...item));
console.log(minArr);

var arr = [[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]];
var minArr = arr.map(function(array){
return Math.min.apply(null,array)
});
console.log(minArr);