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

如何通过for循环访问数组内对象属性并实现属性值求和

如何通过for循环访问数组对象属性并计算值的总和?

没问题,我来一步步教你实现这个需求。咱们先明确目标:遍历给定的数组,访问每个对象的属性值,最后把所有值累加起来。

基础实现(每个对象仅含单个属性的场景)

你的数组里每个对象都只有一组键值对,用最基础的for循环就能轻松处理:

const arr = [{A:1},{A:2},{B:3},{C:3}];
let totalSum = 0;

// 普通for循环遍历数组的每一项
for (let i = 0; i < arr.length; i++) {
  // 取出当前循环到的对象
  const currentObj = arr[i];
  // 获取对象的属性值(因每个对象只有一个属性,直接取第一个值即可)
  const value = Object.values(currentObj)[0];
  // 累加到总和变量中
  totalSum += value;
}

console.log(totalSum); // 最终输出:9

扩展方案:对象可能包含多个属性的场景

如果以后你的数组对象可能存在多组键值对,咱们可以在数组循环里嵌套一个遍历对象属性的循环,确保所有属性值都被计算在内:

const arr = [{A:1, D:4},{A:2},{B:3},{C:3}];
let totalSum = 0;

for (let i = 0; i < arr.length; i++) {
  const currentObj = arr[i];
  // 用for...in循环遍历对象的所有属性
  for (const key in currentObj) {
    // 确保属性是对象自身拥有的,而非继承来的(可选但推荐)
    if (currentObj.hasOwnProperty(key)) {
      totalSum += currentObj[key];
    }
  }
}

console.log(totalSum); // 此处输出:1+4+2+3+3=13

核心步骤拆解

  • 初始化总和变量:定义totalSum并赋值为0,用于存储累加结果。
  • 遍历数组元素:通过普通for循环逐个取出数组中的每个对象。
  • 访问属性值:单个属性用Object.values()直接取值;多属性则用for...in遍历所有属性并取值。
  • 累加求和:将每个属性值加到totalSum中,循环结束后即可得到最终总和。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:14:01