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

如何合并JavaScript数组对象中相同日期对应的amount数值

实现思路

  • 取出原对象内的date、amount两个数组
  • 用临时哈希表存储每个日期对应的累计金额
  • 同步遍历两个数组完成金额累加
  • 提取哈希表的键值对分别作为最终的日期、金额数组

实现代码

let test = [
{
  date: ["2021-11-09", "2021-11-09", "2021-11-10", "2021-11-10"],
  amount: [0.5, 0.5, 1, 2],
}];

// 取出原始数据
const { date, amount } = test[0];
const dateAmountMap = {};

// 遍历累加相同日期的金额
for (let i = 0; i < date.length; i++) {
  const currentDate = date[i];
  dateAmountMap[currentDate] = (dateAmountMap[currentDate] || 0) + amount[i];
}

// 组装为要求的输出格式
const result = {
  date: Object.keys(dateAmountMap),
  amount: Object.values(dateAmountMap)
};

console.log(result);

执行后输出的result就是要求的格式:

{
  date: [ '2021-11-09', '2021-11-10' ],
  amount: [ 1, 3 ]
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 13:06:09