2020-05-21
描述
返回从 start
到 end
(包含两端)中所有数字的乘方之和。
提示
- 使用
Array.prototype.fill()
创建一个目标范围内包含所有数字的数组 - 使用
Array.prototype.map()
和指数运算符(**
)对power
进行计算 - 使用
Array.prototype.reduce()
将计算结果进行相加 - 第二个参数
power
的默认值为2
- 第三个参数
start
的默认值为1
代码
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(10); // 385
sumPower(10, 3); // 3025
sumPower(10, 3, 5); // 2925