按照ID合并对象数组
创始人
2024-08-24 06:00:48
0

我们可以利用 JavaScript 中的 reduce 方法来按照 ID 合并对象数组。

代码示例:

const arr = [ {id: 1, name: '张三', age: 20}, {id: 2, name: '李四', age: 22}, {id: 1, name: '王五', age: 24}, {id: 3, name: '赵六', age: 26}, ];

const result = arr.reduce((acc, cur) => { const findIndex = acc.findIndex(item => item.id === cur.id); if (findIndex === -1) { return [...acc, cur]; } const newObj = {...acc[findIndex], ...cur}; return [...acc.slice(0, findIndex), newObj, ...acc.slice(findIndex+1)]; }, []);

console.log(result);

输出结果:

[ {id: 1, name: '王五', age: 24}, {id: 2, name: '李四', age: 22}, {id: 3, name: '赵六', age: 26} ]

我们可以看到,在返回的结果中,同一 ID 的对象已经被合并,并且只保留了最后一个出现的对象的属性值。如果要保留其他属性值,只需要对代码进行适当修改即可。

相关内容

热门资讯

必备科技!辣椒互娱辅助,微信海... 必备科技!辣椒互娱辅助,微信海豚大厅辅助,wepoke教程(有挂方法)是一款可以让一直输的玩家,快速...
玩家必看教程!微信呢微乐游戏辅... 玩家必看教程!微信呢微乐游戏辅助脚本,新天道大厅辅助,德州论坛(有挂头条);1、这是跨平台的微信呢微...
发现一款!众亿辅助,新九方透视... 发现一款!众亿辅助,新九方透视挂,2025新版技巧(有挂秘籍);发现一款!众亿辅助,新九方透视挂,2...
避坑细节!微信小程序全能修改器... 避坑细节!微信小程序全能修改器,多乐找刺激辅助,系统教程(详细教程)是一款可以让一直输的玩家,快速成...
大家学习交流!新卡农辅助,超级... 大家学习交流!新卡农辅助,超级三加一辅助软件,力荐教程(有挂细节);超级三加一辅助软件是一种具有地方...
教程攻略!三哥玩摆头注可以控制... 教程攻略!三哥玩摆头注可以控制,边锋老友可以开挂,透视教程(的确有挂)是一款可以让一直输的玩家,快速...
科技通报!道游互娱辅助,新荣耀... 科技通报!道游互娱辅助,新荣耀辅助,线上教程(竟然有挂);亲,有的,ai轻松简单,又可以获得无穷的乐...
必备科技!中至辅助器,创思维正... 必备科技!中至辅助器,创思维正版辅助器下载,透明教程(了解有挂);人气非常高,ai更新快且高清可以动...
玩家必看科普!皇豪互众智能辅助... 玩家必看科普!皇豪互众智能辅助器,新卡农辅助软件,我来教教你(有挂攻略);一、皇豪互众智能辅助器有挂...
总算了解!雀神广东定制插件辅助... 总算了解!雀神广东定制插件辅助,四川麻将血战如何开挂辅助,科技教程(了解有挂);四川麻将血战如何开挂...