2013-08-25 116 views
2

我有两个单独的数组看起来像这样两个独立的阵列组合成一个数组对象

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/

+0

@thanks david..I觉得你抓住它,我做了。感谢您的更正 – soum

+1

看着控制台,您所期望的输出似乎就是您所得到的。而且,为了编辑,你很受欢迎。 =) –

+0

我认为你的代码工作 – amdorra

回答

3

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

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

看到上面的链接,一个垫片旧版本浏览器。

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

var newArray = _.zip(x, y); 
相关问题