javascript计算平均值的核心是求和后除以个数,用+和/实现;基础写法适用于固定数值,通用写法用reduce累加再除长度,需处理空数组和非数字等边界情况。

用 JavaScript 计算平均值,核心是:把所有数字加起来,再除以数字的个数。算术运算符(+ 和 /)就承担了“求和”和“除法”这两个关键步骤。
基础写法:手动累加 + 除法
适用于已知几个固定数值的情况:
例如计算 10、20、30 的平均值:
let a = 10, b = 20, c = 30; let average = (a + b + c) / 3; // 使用 + 求和,/ 做除法 console.log(average); // 输出 20
通用写法:数组 + reduce() + 算术运算符
处理任意长度的数字列表时更实用,reduce() 内部靠 + 累加,再用 / 除以长度:
- 先用
arr.reduce((sum, num) => sum + num, 0)得到总和(+ 是关键) - 再除以
arr.length(/ 完成均分)
示例:
const numbers = [5, 15, 25, 35]; const sum = numbers.reduce((acc, val) => acc + val, 0); const average = sum / numbers.length; console.log(average); // 输出 20
注意边界情况:空数组或非数字
直接除以 0 会得 NaN 或 Infinity,需提前判断:
- 检查数组是否为空:
if (numbers.length === 0) return 0; - 可选:过滤掉非数字项,避免
NaN污染结果:numbers.filter(n => typeof n === 'number')
安全版本示例:
function getAverage(arr) {
if (!Array.isArray(arr) || arr.length === 0) return 0;
const validNums = arr.filter(n => typeof n === 'number');
if (validNums.length === 0) return 0;
const sum = validNums.reduce((a, b) => a + b, 0);
return sum / validNums.length;
}
一行简写(适合简单场景)
如果确定数据干净且非空,可用箭头函数快速写出:
const avg = arr => arr.reduce((a, b) => a + b, 0) / arr.length; console.log(avg([8, 12, 16])); // 12
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











