You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在函数的for循环中累加数组元素以计算数组平均值?

数组平均值计算的代码修正

你的代码里有三个关键问题需要调整,下面一步步说明并给出修正后的版本:

  • total变量要放在循环外初始化:如果把let total写在循环里,每次循环都会重新创建一个值为undefined的total,根本没法累加。得把它移到循环外面,初始值设为0。
  • 循环内实现累加:每次循环中,把当前数组元素array[i]加到total上,用total += array[i]就可以完成累加操作。
  • return语句要放在循环结束后:如果在循环里写return,第一次循环执行到这里就会直接退出函数,循环根本跑不完。必须等循环把所有元素都累加完,再用总和除以数组长度得到平均值返回。

修正后的完整代码:

function getAverage(array) {    
  let total = 0; // 初始化总和变量
  for (let i = 0; i < array.length; i++){
    total += array[i]; // 累加当前数组元素
  }
  return total / array.length; // 循环结束后计算并返回平均值
}

console.log(getAverage([20, 22, 24, 26])); // 输出:23
console.log(getAverage([22, 45, 4, 65])); // 输出:34,符合示例要求

另外,也可以用JavaScript的数组方法简化写法,比如reduce来计算总和,代码会更简洁:

function getAverage(array) {
  const total = array.reduce((sum, num) => sum + num, 0);
  return total / array.length;
}

内容的提问来源于stack exchange,提问作者Justin Hawkins

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 05:55:21