JavaScript数组如何根据ID匹配合并数据?

JavaScript数组如何根据ID匹配合并数据?

利用javascript数组实现id匹配数据合并

本文介绍如何高效地将两个JavaScript数组A和B根据ID进行匹配和数据合并。数组A包含id字段,数组B包含cid和des字段。目标是创建一个新数组,其中每个元素包含A数组中id对应的元素及其在B数组中所有匹配的cid元素信息。

问题分析与解决方案

我们需要遍历数组A,对于A中的每个元素,在数组B中查找cid与A中id匹配的元素,并将匹配结果添加到A元素中。 以下代码实现了这一功能:

let a = [{id:1},{id:2}];let b = [{cid:1, des:"1"},{cid:1, des:"11"},{cid:2, des:"2"}];let c = a.map(itemA => {  const matchingItems = b.filter(itemB => itemB.cid === itemA.id);  return {    ...itemA,    matchedData: matchingItems  };});console.log(c);

这段代码首先定义了数组 a 和 b。map 函数遍历数组 a,对于每个 itemA,filter 函数筛选出 b 数组中 cid 与 itemA.id 相匹配的元素,并将这些匹配元素作为 matchedData 属性添加到 itemA 中,最终形成新的数组 c。

立即学习“Java免费学习笔记(深入)”;

这个方法清晰地展示了数据合并的过程,利用了JavaScript内置的map和filter函数,提高了代码的可读性和效率。 最终结果 c 是一个数组,每个对象包含 id 和一个 matchedData 属性,该属性包含所有与该 id 匹配的 b 数组元素。

以上就是JavaScript数组如何根据ID匹配合并数据?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1563211.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
为什么主流UI库的日期选择器不提供手动输入功能?
上一篇 2025年12月22日 08:06:39
如何动态调整Facebook分享内容:后端接口与Meta标签如何协同工作?
下一篇 2025年12月22日 08:06:51

相关推荐

发表回复

登录后才能评论
关注微信