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,'---------结果');

相关推荐
ℋᙚᵐⁱᒻᵉ鲸落2 小时前
移动端滑动手势冲突:overflow: auto导致外层横向滑动失效
前端·javascript·css·vue.js·html
默_笙3 小时前
🎃 前端学了 Next.js,后端该学啥?NestJS 就是 Node 版的蜜雪冰城
前端·javascript
前端snow4 小时前
ai agent --- 实现 openclaw 定时间效果
前端
码云之上5 小时前
换模型之后,Chatbot 为什么要自己做 compact?
前端·agent·前端工程化
এ慕ོ冬℘゜5 小时前
navigator 导航对象 BOM制作方法
javascript
星栈5 小时前
自定义 UI-UX-Pro-Max 的 CSV 知识库,把 AI 生成的后台拉回行业该有的样子
前端·agent·weui
研☆香5 小时前
简单的图片上传 删除 预览
前端
ITresearchGuest5 小时前
我用 AI 一小时写了一个世界杯数据可视化平台|前端 VibeCoding 初体验
前端·人工智能·信息可视化
慧一居士6 小时前
Vite项目中使用Less步骤,详细使用示例
前端·css
花间相见7 小时前
【LangChain组件03】—— LangChain Agents 执行与状态:工作流程与状态管理实战
java·前端·langchain