javascript:使用属性和索引合并2个数组

时间:2016-03-20 09:55:05

标签: javascript arrays

我有2个数组,如:

a1 = ["k1","k2","k3"];
a2 = ["v1","v2","v3"];

我想要那个:

a3 = ["k1": { myv: "v1" }, "k2": { myv: "v2" }, "k3": { myv: "v3" }];

我使用了forEach,如:

a1.forEach(function(elem, i) {
  a3.push(elem);
  a3[i].name = a2[i];
});

但它不起作用,它给了我:

a3 = ["k1","k2","k3"];

那我怎么做呢?

请帮帮我。

1 个答案:

答案 0 :(得分:3)

使用适当的数据结构和单个循环,您可能需要:



var a1 = ["k1", "k2", "k3"],
    a2 = ["v1", "v2", "v3"],
    result = {};

a1.forEach(function (a, i) {
    result[a] = { myv: a2[i] };
});
document.write('<pre>' + JSON.stringify(result, 0, 4) + '</pre>');
&#13;
&#13;
&#13;