将两个单独的数组合并为一个带有对象的数组

时间:2013-08-25 20:16:04

标签: javascript jquery

我有两个独立的数组,看起来像这样

var x = ['one', 'two', 'three'];
var y = ['1', '2', '3'];

我这样做是为了结合它们

var newArray = [];
for (var i = 0; i < x.length && i < y.length; i++) {
    newArray[i] = [x[i], y[i]];
}

期望的输出

newArray = [
    ['one', '1'],
    ['two', '2'],
    ['three', '3']
]

这是我的小提琴:http://jsfiddle.net/sghoush1/EjRPS/4/

1 个答案:

答案 0 :(得分:3)

在ES5上,您可以使用Array.prototype.map来简化循环:

var newArray = x.map(function(n, i) {
    return [n, y[i]];
});

请参阅上面的链接,了解旧版浏览器的垫片。

如果您有Underscore.js,则可以使用:

var newArray = _.zip(x, y);