利用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。
这个方法清晰地展示了数据合并的过程,利用了JavaScript内置的map和filter函数,提高了代码的可读性和效率。 最终结果 c 是一个数组,每个对象包含 id 和一个 matchedData 属性,该属性包含所有与该 id 匹配的 b 数组元素。
以上就是JavaScript数组如何根据ID匹配合并数据?的详细内容,更多请关注知识资源分享宝库其它相关文章!
版权声明
本站内容来源于互联网搬运,
仅限用于小范围内传播学习,请在下载后24小时内删除,
如果有侵权内容、不妥之处,请第一时间联系我们删除。敬请谅解!
E-mail:dpw1001@163.com
发表评论