从数组中检索最大元素

JavaScriptJavaScriptBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在本实验中,我们将探究 maxN 函数,该函数用于从给定数组中返回 n 个最大元素。我们将学习如何使用 Array.prototype.sort()、展开运算符 (...) 和 Array.prototype.slice() 对数组进行降序排序和切片,并返回指定数量的元素。本实验将帮助你加深对 JavaScript 中数组操作的理解。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("`JavaScript`")) -.-> javascript/BasicConceptsGroup(["`Basic Concepts`"]) javascript(("`JavaScript`")) -.-> javascript/AdvancedConceptsGroup(["`Advanced Concepts`"]) javascript/BasicConceptsGroup -.-> javascript/variables("`Variables`") javascript/BasicConceptsGroup -.-> javascript/data_types("`Data Types`") javascript/BasicConceptsGroup -.-> javascript/arith_ops("`Arithmetic Operators`") javascript/BasicConceptsGroup -.-> javascript/comp_ops("`Comparison Operators`") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("`Spread and Rest Operators`") subgraph Lab Skills javascript/variables -.-> lab-28504{{"`从数组中检索最大元素`"}} javascript/data_types -.-> lab-28504{{"`从数组中检索最大元素`"}} javascript/arith_ops -.-> lab-28504{{"`从数组中检索最大元素`"}} javascript/comp_ops -.-> lab-28504{{"`从数组中检索最大元素`"}} javascript/spread_rest -.-> lab-28504{{"`从数组中检索最大元素`"}} end

如何在 JavaScript 中从数组获取 n 个最大元素

要在 JavaScript 中练习编码,请打开终端/SSH 并输入 node。完成此操作后,你可以使用以下步骤从数组中获取 n 个最大元素:

  1. 使用 Array.prototype.sort() 并结合展开运算符 (...) 创建数组的浅克隆,并按降序排序。
  2. 使用 Array.prototype.slice() 获取指定数量的元素。
  3. 如果你省略第二个参数 n,默认情况下将得到一个单元素数组。
  4. 如果 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 中练习更多实验来提升你的技能。

您可能感兴趣的其他 JavaScript 教程