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 (!accitem.age) {

accitem.age = {

age: item.age,

name: item.name,

names: item.name

};

} else {

accitem.age.names.push(item.name);

}

return acc;

}, {});

const result = Object.values(grouped);

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

相关推荐
BreezeJiang1 分钟前
父组件一更新,子组件就必须跟着更新吗?从 memo 走到 useCallback
前端·javascript
胡萝卜术2 分钟前
复用与并行:从自定义 Hooks 封装状态逻辑,到 Web Worker 的多线程计算
前端·javascript·面试
circuitsosk2 分钟前
长文本与高并发下的Token“瘦身”策略:Prompt压缩与上下文窗口优化
java·前端·python·prompt·上下文窗口·token优化
触底反弹2 分钟前
🏗️ 写完 Todos 之后,大型 React 项目的 7 个架构真相
前端·react.js·前端框架
huabuyu3 分钟前
CLS 总是修不好?因为你只盯着分数,从没拆开看过它
前端·javascript
倾颜4 分钟前
会 Vue / React,上手 Electron 真没那么难:前端开发者需要补齐的核心知识
前端
kisshyshy4 分钟前
从多页面到SPA:React Router 路由进阶完全指南
前端·javascript·react.js
今日无bug5 分钟前
JS 数据类型 + 内存分配:从 8 种类型到栈堆模型
javascript·数据结构
JakeJiang5 分钟前
抓到接口还不够:用 AIProxy 改返回、Mock 数据、切测试环境
前端·后端
倾颜7 分钟前
从 Web 到桌面:AI Mind Electron Desktop Host 的安全边界设计
前端