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

如何按属性值映射对象数组并按指定条件对字段分组求和

按字段分组求和实现方案

可以使用JavaScript数组内置的reduce方法快速实现分组聚合计算,代码实现如下:

// 原始数组
const originArr = [{amount:100, prefix:'a'},{amount:50, prefix:'b'},{amount:70, prefix:'a'},{amount:100, prefix:'b'}];

// 分组求和逻辑
const groupSum = originArr.reduce((accumulator, currentItem) => {
  const key = currentItem.prefix;
  accumulator[key] = (accumulator[key] || 0) + currentItem.amount;
  return accumulator;
}, {});

// 输出结果:{a: 170, b: 150}
console.log(groupSum);

逻辑说明:

  • reduce方法接收两个参数:累加执行函数、累加器初始值(这里初始化为空对象用于存储分组结果)
  • 遍历数组时以prefix作为分组键,不存在对应键时默认初始值为0,累加对应amount值
  • 最终输出的对象中即可直接获取不同前缀的总和,如groupSum.a得到170,groupSum.b得到150

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 15:54:00