给定范围内幂之和

JavaScriptJavaScriptBeginner
立即练习

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

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

简介

在这个实验中,我们将探索一个用于计算给定数字范围内幂之和的 JavaScript 函数。你将学习如何使用内置数组方法,如 fill()map()reduce(),来高效地执行数学运算。此外,你将有机会根据自己的需求自定义函数的输入参数。


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-28635{{"给定范围内幂之和"}} javascript/data_types -.-> lab-28635{{"给定范围内幂之和"}} javascript/arith_ops -.-> lab-28635{{"给定范围内幂之和"}} javascript/comp_ops -.-> lab-28635{{"给定范围内幂之和"}} javascript/higher_funcs -.-> lab-28635{{"给定范围内幂之和"}} end

计算给定范围内幂之和的函数

要计算指定范围内(包括两个端点)所有数字的幂之和,请使用以下函数:

const sumPower = (end, power = 2, start = 1) =>
  Array(end + 1 - start)
    .fill(0)
    .map((x, i) => (i + start) ** power)
    .reduce((a, b) => a + b, 0);

以下是使用此函数的方法:

  • 调用 sumPower(end) 来计算从 1 到 end 的所有数字的平方和。
  • 调用 sumPower(end, power) 来计算从 1 到 end 的所有数字的 power 次幂之和。
  • 调用 sumPower(end, power, start) 来计算从 startend 的所有数字的 power 次幂之和。

请注意,第二个和第三个参数(powerstart)是可选的,如果未提供,则分别默认为 21

示例:

sumPower(10); // 返回 385(1 到 10 的数字的平方和)
sumPower(10, 3); // 返回 3025(1 到 10 的数字的立方和)
sumPower(10, 3, 5); // 返回 2925(5 到 10 的数字的立方和)

总结

恭喜你!你已经完成了“给定范围内幂之和”实验。你可以在 LabEx 中练习更多实验来提升你的技能。