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

如何使用JavaScript/jQuery计算多对象中同名变量的平均值?

计算数组对象中属性的平均值(优雅实现)

嘿,很高兴你把这个问题分享出来——确实,用更优雅的方式计算数组对象中某个属性的平均值,能让代码更简洁易读。这里有个很符合现代JavaScript风格的实现方案:

核心思路

利用Array.prototype.reduce()快速累加所有this_value的总和,再除以数组长度;同时要处理数组为空的边界情况,避免出现除以0的错误。

代码实现

const original_array = [ { this_value:5 }, { this_value:10 }, { this_value:2 } ];

// 分步实现,可读性更强
const totalSum = original_array.reduce((accumulator, currentItem) => {
  return accumulator + currentItem.this_value;
}, 0); // 初始值设为0,确保空数组时累加结果为0

const averageValue = original_array.length ? totalSum / original_array.length : 0;

console.log(averageValue); // 输出:5.666666666666667

如果追求极致简洁,也可以写成一行:

const averageValue = original_array.length 
  ? original_array.reduce((s, i) => s + i.this_value, 0) / original_array.length 
  : 0;

为什么这是优雅的实现?

  • 声明式编程:用reduce替代手动for循环,代码意图更清晰,不需要关心循环的细节
  • 边界处理:提前考虑空数组的情况,避免运行时错误
  • 简洁性:用最少的代码完成需求,同时保持可读性

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 03:33:44