在 JavaScript 中获取数组中的最大 n 个值
我们需要编写一个 JavaScript 函数,该函数将数字数组作为第一个参数,将一个数字(假设为 n)作为第二个参数。
然后,我们的函数应该从数组中选取 n 个最大的数字,并返回包含这些数字的新数组。
示例
代码实现如下 −
const arr = [3, 4, 12, 1, 0, 5, 22, 20, 18, 30, 52]; const pickGreatest = (arr = [], num = 1) => { if(num > arr.length){ return []; }; const sorter = (a, b) => b - a; const descendingCopy = arr.slice().sort(sorter); return descendingCopy.splice(0, num); }; console.log(pickGreatest(arr, 3)); console.log(pickGreatest(arr, 4)); console.log(pickGreatest(arr, 5));
输出
控制台中输出如下 −
[ 52, 30, 22 ] [ 52, 30, 22, 20 ] [ 52, 30, 22, 20, 18 ]
广告