js 以多字段为维度汇总某一字段值

js 以多字段为维度汇总某一字段值

JavaScript可以以多个字段为维度进行汇总。你可以使用多个for循环或forEach循环,针对每个字段进行分组。然后使用reduce方法进行汇总。举个例子,假设你有一个数组数据如下:

let data = [{
    name: 'Alice',
    age: 25,
    city: 'New York',
    sales: 100
}, {
    name: 'Bob',
    age: 30,
    city: 'Los Angeles',
    sales: 200
}, {
    name: 'Alice',
    age: 25,
    city: 'New York',
    sales: 150
}];

你可以以nameagecity这三个字段为维度进行汇总,代码如下:

let summary = data.reduce((acc, cur) => {
    let key = `${cur.name}-${cur.age}-${cur.city}`;
    if (!acc[key]) {
        acc[key] = {
            name: cur.name,
            age: cur.age,
            city: cur.city,
            sales: 0
        };
    }
    acc[key].sales += cur.sales;
    return acc;
}, {});

let result = [];
for (let key in summary) {
    result.push(summary[key]);
}

console.log(result);

运行代码后,会输出按照nameagecity这三个字段汇总后的结果:

[ 
  { name: 'Alice', age: 25, city: 'New York', sales: 250 },
  { name: 'Bob', age: 30, city: 'Los Angeles', sales: 200 } 
]

通过以上代码,你可以了解到如何以多个字段为维度进行汇总。

posted @   三叶草body  阅读(221)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示