JS 数组相同的key 进行合并

const data = [ { age: 1, name: 'zzz' }, { age: 2, name: 'ccc' }, { age: 1, name: 'bbb' }, { age: 3, name: 'aa' } ];

age相同的变成以下数据 data = [ { age: 1, name: 'zzz', names:['zzz','bbb'] }, { age: 2, name: 'ccc',names:[] }, { age: 3, name: 'aa',names:[] } ];

const grouped = data.reduce((acc, item) => {

if (!acc[item.age]) {

acc[item.age] = {

age: item.age,

name: item.name,

names: [item.name]

};

} else {

acc[item.age].names.push(item.name);

}

return acc;

}, {});

const result = Object.values(grouped);

console.log(result,'---------结果');

相关推荐
陈随易11 分钟前
bun将会支持Bun.image,你怎么看?
前端·后端·程序员
jingqingdai328 分钟前
别用正则格式化 HTML!我用 DOM 遍历实现零风险本地格式化,老项目重构效率直接拉满
前端·重构·html
木斯佳31 分钟前
前端八股文面经大全:腾讯前端实习二、三OC面(2026-04-27)·面经深度解析
前端·状态模式
Python私教44 分钟前
如意Agent日志系统重构:从 print() 大海捞针到结构化可观测性栈
java·前端·重构
拉里呱唧1 小时前
一个像在使用PPT的在线 HTML 编辑器:HeyHTML
javascript·交互·html5
We་ct1 小时前
LeetCode 97. 交错字符串:动态规划详解
前端·算法·leetcode·typescript·动态规划
Chengbei111 小时前
轻量化 Web 安全日志分析神器 星川智盾日志威胁检测、地理溯源、MITRE ATT&CK 映射,支持 Windows/macOS/Linux
前端·人工智能·安全·web安全·macos·系统安全·安全架构
风流 少年1 小时前
Python Web框架:FastAPI
前端·python·fastapi
GISer_Jing1 小时前
AI时代面试新常态——从“会用工具”到“深挖原理”的跨越
前端·人工智能·ai编程