sumPower - 幂累加

优质
小牛编辑
127浏览
2023-12-01

返回从 startend(包括两端)所有数字的权重总和。

使用 Array.fill() 创建一个包含目标范围内所有数字的数组,Array.map() 和指数运算符(**)来将它们求 power 次幂,并且使用 Array.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