我在javascript中有两个数组:
var array1 = ["a","b","c"];
var array2 = ["e","f","g"];
我希望得到的数组是这样的:
array3 = ["a","e","b","f","c","g"];
有什么办法吗?
答案 0 :(得分:6)
您可以尝试使用concat()
方法:
var array1 = ["a","b","c"];
var array2 = ["e", "f","g"];
var array3 = array1.concat(array2); // Merges both arrays
根据您的具体要求,您必须遵循以下条件:
function mergeArrays(a, b){
var ret = [];
for(var i = 0; i < a.length; i++){
ret.push(a[i]);
ret.push(b[i]);
}
return ret;
}
答案 1 :(得分:6)
一个简单的循环会这样做吗?
array3 = new Array();
for(var i = 0; i < array1.length; i++)
{
array3.push(array1[i]);
array3.push(array2[i]);
}
答案 2 :(得分:2)
这应该有效:
function zip(source1, source2){
var result=[];
source1.forEach(function(o,i){
result.push(o);
result.push(source2[i]);
});
return result
}
这不是连接,所以答案改变了。
也许您想使用:http://underscorejs.org/#zip