從提供的數組中返回?n
?個最小元素。如果?n
?大于或等于提供的數組長度,則返回原數組(按降序排列)。
結合使用Array.sort()
?與展開操作符(...
) ,創建一個數組的淺克隆,并按降序排列。 使用?Array.slice()
?以獲得指定的元素個數。 忽略第二個參數?n
?,默認獲取單個元素(以數組的形式)。
const minN = (arr, n = 1) => [...arr].sort((a, b) => a - b).slice(0, n);
查看示例
minN([1, 2, 3]); // [1] minN([1, 2, 3], 2); // [1,2]
maxN - 返回數組中N個最大元素
從提供的數組中返回?n
?個最大元素。如果?n
?大于或等于提供的數組長度,則返回原數組(按降序排列)。
結合使用Array.sort()
?與展開操作符(...
) ,創建一個數組的淺克隆,并按降序排列。 使用?Array.slice()
?以獲得指定的元素個數。 忽略第二個參數?n
?,默認獲取單個元素(以數組的形式)。
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]