如何在javascript中将两个数组组合成一个对象数组?

时间:2018-06-07 12:46:10

标签: javascript arrays

我有两个数组,我想形成一个对象数组,这样新的obj数组有两个键,第一个键用第一个数组的元素填充,第二个键有第二个数组的数组元素。可以使用map函数完成。我找到了最接近的答案: - Merge two arrays into an array of objects with property values

如: -

ar1=[];
ar2=[];
armixed=[{ar1element,ar2element},{}......]

但是它使用了角度JS我只想使用纯JS。

1 个答案:

答案 0 :(得分:1)

我不确定您的输出应该是什么,但您提供的输出似乎无效。我已将输出格式修改为有效。

对于你有解决方案的任务是zip数组,但JS没有内置zip函数,所以我们可以通过map函数模拟它:

var ar1 = ['a1', 'a2', 'a3', 'a4', 'a5'];
var ar2 = ['b1', 'b2', 'b3', 'b4', 'b5'];
var armixed = ar1.map(function (x, i) { 
                          return [x, ar2[i]] 
                      });

输出将是:

armixed = [
    ["a1", "b1"]
    ["a2", "b2"]
    ["a3", "b3"]
    ["a4", "b4"]
    ["a5", "b5"]
]