在函数 getSum 中,参数 a 和 b 是两个数字,而参数 arr 是一个使用了剩余参数语法 ... 的数组。在 for 循环中,对于每个数组元素,都将 a、b 和该元素相加并赋值给 sum 变量,因此最终的 sum 值只会是最后一个元素和 a、b 相加的结果,而不是所有元素相加的结果。

要实现所有元素相加的结果,应该将 sum 的初始值设为 a+b,然后在循环中累加每个元素的值,即 sum += arr[i]。

修改后的代码如下:

function getSum(a, b, ...arr) {
  let sum = a + b;
  for(let i = 0; i < arr.length; i++){
    sum += arr[i];
  }
  console.log(arr);
  return sum;
}
console.log(getSum(1, 2, 3, 4, 5)); // 15
JavaScript 函数 getSum() 详解:如何正确计算所有参数的总和

原文地址: https://www.cveoy.top/t/topic/l4SA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录