使用反向范围初始化数组

JavaScriptJavaScriptBeginner
立即练习

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

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

简介

在本实验中,我们将探索如何使用 JavaScript 以反向范围初始化数组。我们将学习如何使用 Array.from()Array.prototype.map() 方法来创建一个包含指定范围内数字但顺序相反的数组。我们还将了解如何为 startstep 参数设置默认值,并使用它们生成所需的输出。


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/higher_funcs("`Higher-Order Functions`") subgraph Lab Skills javascript/variables -.-> lab-28394{{"`使用反向范围初始化数组`"}} javascript/data_types -.-> lab-28394{{"`使用反向范围初始化数组`"}} javascript/arith_ops -.-> lab-28394{{"`使用反向范围初始化数组`"}} javascript/comp_ops -.-> lab-28394{{"`使用反向范围初始化数组`"}} javascript/higher_funcs -.-> lab-28394{{"`使用反向范围初始化数组`"}} end

如何在 JavaScript 中使用反向范围初始化数组

要在 JavaScript 中使用反向范围初始化数组,请使用以下函数:

const initializeArrayWithRangeRight = (end, start = 0, step = 1) =>
  Array.from({ length: Math.ceil((end + 1 - start) / step) }).map(
    (v, i, arr) => (arr.length - i - 1) * step + start
  );

此函数创建一个包含指定范围内数字且顺序相反的数组。startend 参数是包含性的,step 参数指定范围内数字之间的公差。

要使用此函数,请将所需的 endstartstep 值作为参数调用它,如下所示:

initializeArrayWithRangeRight(5); // [5, 4, 3, 2, 1, 0]
initializeArrayWithRangeRight(7, 3); // [7, 6, 5, 4, 3]
initializeArrayWithRangeRight(9, 0, 2); // [8, 6, 4, 2, 0]

如果你省略 start 参数,它将默认为 0。如果你省略 step 参数,它将默认为 1

总结

恭喜你!你已经完成了“使用反向范围初始化数组”实验。你可以在 LabEx 中练习更多实验来提升你的技能。

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