范围内幂的和

计算从 startend(包括两者)之间所有数字的幂的和。

  • 使用 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