简介
在本实验中,我们将探究 maxN 函数,该函数用于从给定数组中返回 n 个最大元素。我们将学习如何使用 Array.prototype.sort()、展开运算符 (...) 和 Array.prototype.slice() 对数组进行降序排序和切片,并返回指定数量的元素。本实验将帮助你加深对 JavaScript 中数组操作的理解。
在本实验中,我们将探究 maxN 函数,该函数用于从给定数组中返回 n 个最大元素。我们将学习如何使用 Array.prototype.sort()、展开运算符 (...) 和 Array.prototype.slice() 对数组进行降序排序和切片,并返回指定数量的元素。本实验将帮助你加深对 JavaScript 中数组操作的理解。
要在 JavaScript 中练习编码,请打开终端/SSH 并输入 node。完成此操作后,你可以使用以下步骤从数组中获取 n 个最大元素:
Array.prototype.sort() 并结合展开运算符 (...) 创建数组的浅克隆,并按降序排序。Array.prototype.slice() 获取指定数量的元素。n,默认情况下将得到一个单元素数组。n 大于或等于所提供数组的长度,则返回原始数组(按降序排序)。以下是实现这些步骤的 maxN 函数的 JavaScript 代码:
const maxN = (arr, n = 1) => [...arr].sort((a, b) => b - a).slice(0, n);
你可以使用以下示例测试 maxN 函数:
maxN([1, 2, 3]); // [3]
maxN([1, 2, 3], 2); // [3, 2]
恭喜你!你已经完成了“N 个最大元素”实验。你可以在 LabEx 中练习更多实验来提升你的技能。