代码之家  ›  专栏  ›  技术社区  ›  Bilal

使用javascript将两个一维数组的元素合并为二维数组的元素[重复]

  •  0
  • Bilal  · 技术社区  · 6 年前

    这个问题已经有了答案:

    是否可以合并(或转换?)两个大型的一维数组(数万个项)组成一个二维数组,这样二维数组的列就是每个一维数组的元素相关项?

    我的意思是:

    a1 = [1,2,3,4,5,6,7,8,9,10]
    a2 = [101,102,103,104,105,106,107,108,109,110]
    
    result = [[1,101],[2,102],[3,103],[4,104],[5,105],[6,106],[7,107],[8,108],[9,109],[10,110]]
    

    在本文中,Python提供了几种可能的方法 Merge Link 在这里,我必须做完全相同的事情,但在javascript中。尝试concat、merge,但没有给出预期的结果。

    谢谢

    2 回复  |  直到 6 年前
        1
  •  0
  •   Daladier Sampaio    6 年前

    可以使用map操作从a1返回项,并使用a2的索引元素,如下所示:

    const result = a1.map((item,index) => {return [item,a2[index]]})

    不要忘记检查长度是否相同!

        2
  •  0
  •   prasad_    6 年前

    您可以按每个元素合并两个一维数组中的元素,并按如下方式获得所需的二维数组:

    var a1 = [1,2,3,4,5,6,7,8,9,10];
    var a2 = [101,102,103,104,105,106,107,108,109,110];
    var resultArr = [];
    
    for (let i = 0; i < a1.length; i++) {
        resultArr.push([a1[i], a2[i]]);
    };
    
    console.log(resultArr); // prints the result
    

    输出:

    [[1,101],[2,102],[3,103],[4,104],[5,105],[6,106],[7,107],[8,108],[9,109],[10,110]]