按照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 的对象已经被合并,并且只保留了最后一个出现的对象的属性值。如果要保留其他属性值,只需要对代码进行适当修改即可。

相关内容

热门资讯

盘点几款!决战卡五星开挂脚本软... 盘点几款!决战卡五星开挂脚本软件,决战卡五星果然是真的有开挂科普技巧1)决战卡五星辅助插件:进一步探...
一起来讨论!云月晋善麻将开挂脚... 一起来讨论!云月晋善麻将开挂脚本软件,云月晋善麻将真是存在有开挂教你app1、很好的工具软件,可以解...
热点讨论!66玩麻将开挂脚本软... 热点讨论!66玩麻将开挂脚本软件,66玩麻将真是是真的有开挂教你脚本1、下载好66玩麻将脚本下载之后...
如何分辨真伪!麻友圈2贵州捉鸡... 如何分辨真伪!麻友圈2贵州捉鸡开挂脚本软件,麻友圈2贵州捉鸡果然是真的有开挂开挂app麻友圈2贵州捉...
如何分辨真伪!华龙棋牌辅助脚本... 如何分辨真伪!华龙棋牌辅助脚本软件,华龙棋牌本来真的有辅助分享技巧华龙棋牌辅助器是一种具有地方特色的...
带你了解!九天揽月透视脚本软件... 带你了解!九天揽月透视脚本软件,九天揽月一贯是有透视解密脚本1、起透看视 九天揽月辅助软件价格2、随...
分享给玩家!宁波麻将透视脚本软... 分享给玩家!宁波麻将透视脚本软件,宁波麻将都是真的有透视必备插件;一、宁波麻将可以开透视的定义与意义...
查到实测辅助!panda透视脚... 查到实测辅助!panda透视脚本软件,panda都是有透视普及插件1、panda模拟器是什么优化,p...
分享一款!边锋老友朝阳麻将透视... 分享一款!边锋老友朝阳麻将透视挂脚本软件,边锋老友朝阳麻将本来有透视挂专业神器边锋老友朝阳麻将脚本下...
总算了解!微竞朝阳麻将开挂脚本... 总算了解!微竞朝阳麻将开挂脚本软件,微竞朝阳麻将好像有开挂解谜教程1、微竞朝阳麻将脚本辅助下载、微竞...