如何以 array1 的第一个元素和 array2 的第一个元素等形成新数组的方式组合 2 个数组

How to combine 2 arrays in a way that 1st element of array1 and 1st element of array2 and so on form a new array

我有 2 个数组。第一个包含像这样的年份 [2021,2020,2019,2018,2017] 第二个包含出现次数 [2,3,1,3,3] 我希望新数组看起来像这样 [[2021,2],[2020,3],[2019,1],[2018,3],[2017,3]] 这该怎么做?请帮忙! 提前谢谢你。

更新:

const merge = (y, o) => {
    const res = [];
    y.forEach((year, i) =>
              res.push(`${year},${o[i]}`)
             );
    return res;
  };
  console.log(merge(allyears,farray))

我试过这样做,效果很好,但新数组看起来像这样

["2021,3","2020,1","2019,2","2018,3","2017,3"]

如何让它看起来像这样

[[2021,2],[2020,3],[2019,1],[2018,3],[2017,3]]

确保2个数组的长度相等

所以我们有:

const arr1 = [2021,2020,2019,2018,2017];
const arr2 = [2,3,1,3,3];

const combine = arr1.map((value, index) => ([value, arr2[index]]))

console.log(combine)

P/s: 还有一些其他的解决方案可以使用,但只有上面那个