js中forEach嵌套遍历合并两个不同长度数组

正如标题是我在群里看到的小伙伴问的问题。

有如下两个不同长度数组:

let arr1 = [1,2]
let arr2 = [3,4,5]

要求合并后是这个样子:

let attr3 = [{3,1},{4,1},{5,1},{3,2},{4,2},{5,2}]

正好最近在做项目和后端对接口时有这么个需求,需要将两个数组中的每一项拼凑在一起成为一条记录,然后再将每一条记录 push 进一个新数组,再发请求。

我是怎么做的呢?我是通过两个 forEach 嵌套遍历解决了这个需求,同理上边的例子也可以这样实现。

let arr3= [];
arr1.forEach((item1) => {
  arr2.forEach((item2) => {
    let obj = {};
    obj.userId = item2;
    obj.roleId = item1;
    arr3.push(obj);
  });
});
console.log(arr3);

这样就可以实现我们需求,是不是很简单,其实就是双重循环,一层层查找,希望对大家有用,如果也解决了你的问题,请转发出去让更多小伙伴学习。

「点点赞赏,手留余香」

2

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » js中forEach嵌套遍历合并两个不同长度数组

发表回复