按照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、在大赢家...
玩家攻略推荐!德州扑克辅助器功... 玩家攻略推荐!德州扑克辅助器功能攻略,德州扑克好像有辅助器攻略(真的有辅助挂)1)德州扑克免费钻石:...
推荐一款!一起斗地主辅助功能神... 推荐一款!一起斗地主辅助功能神器,一起斗地主其实存在有辅助神器(有辅助挂教学)1、首先打开一起斗地主...
必看攻略!芷芷休闲透视挂功能软... 必看攻略!芷芷休闲透视挂功能软件,芷芷休闲都是有透视挂软件(有辅助挂方式)1、芷芷休闲有没有辅助教程...
2分钟细说!宝宝浙江开挂功能a... 2分钟细说!宝宝浙江开挂功能app,宝宝浙江都是是有开挂app(有辅助挂教学)小薇(辅助器软件下载)...
揭秘关于!棋牌游辅助功能攻略,... 揭秘关于!棋牌游辅助功能攻略,棋牌游竟然真的有辅助攻略(有辅助挂攻略)1.棋牌游 选牌创建新账号,点...
实测揭晓!七月游戏透视功能ap... 实测揭晓!七月游戏透视功能app,七月游戏确实是有透视app(有辅助挂猫腻)1、完成七月游戏辅助器v...
玩家必看科普!如意棋牌辅助器功... 玩家必看科普!如意棋牌辅助器功能工具,如意棋牌其实是真的有辅助器工具(有辅助挂详细)如意棋牌能透视中...
最新技巧!鼎盛棋牌开挂功能插件... 最新技巧!鼎盛棋牌开挂功能插件,鼎盛棋牌总是是有开挂插件(有辅助挂神器)1、在鼎盛棋牌插件功能辅助器...
揭秘一下!微友约局开挂功能教程... 揭秘一下!微友约局开挂功能教程,微友约局总是有开挂教程(真实有辅助挂)1、揭秘一下!微友约局开挂功能...