const maxN = (arr, n = 1) => [...arr].sort((a, b) => b - a).slice(0, n);
测试:
maxN([1, 2, 3]); // [3]
maxN([1, 2, 3], 2); // [3,2]
注意,如果直接是arr.sort()
的话,arr本身就会被排序,所以用[...arr].sort
,相当于做了一次复制。
const maxN = (arr, n = 1) => [...arr].sort((a, b) => b - a).slice(0, n);
测试:
maxN([1, 2, 3]); // [3]
maxN([1, 2, 3], 2); // [3,2]
注意,如果直接是arr.sort()
的话,arr本身就会被排序,所以用[...arr].sort
,相当于做了一次复制。