开发者问题收集

如何在 Javascript 中合并两个不同的数组?

2013-01-17
185

我有这个数组

var arr1 = [19, 1, 1, 1, 1];

和另一个数组

var arr2 = ["Default", "Dynamic", "Assessment", "Risk", "Privacy"];

我希望以某种方式合并它们,使其看起来像这样

var merged_array = [ ["Default", 19], ["Dynamic", 1], ["Assessment", 1], ["Risk", 3], ["Privacy", 2] ];

我该怎么做?我尝试了 join ,但没有得到我想要的结果。提前致谢!

3个回答

使用 for 循环:

var merged_array = new Array(arr1.length);
for (var i = 0; i < arr1.length; i++) {
  merged_array[i] = new Array(arr2[i], arr1[i]);
}

假设 arr1 和 arr2 具有相同的长度。

MAK
2013-01-17

如果您有 jquery 或同等产品:

var merged_array = $.map(arr1, function(e, i) {
    return [arr2[i], e];
});

如果没有,则只需使用 for 循环,想法相同。

var merged_array = []
for (var i = 0; i < arr1.length && i < arr2.length; i++) {
    merged_array[i] = [arr2[i], arr1[i]];
}
Robin
2013-01-17
var result = new Array();
for (var i=0; i<arr1 .length && i<arr2.length ; i++) {
    result[i] = new Array();
    result[i][0] = arr1[i];
    result[i][1] = arr2[i];
}
Majid Laissi
2013-01-17