我想將兩個不同的數組連接成一個。例如,我們有兩個數組JavaScript鏈接陣列
var x = [1,2,3,4,5,6,7,8,9];
y = [5,4,8,5,5,5,5,5,5];
我有興趣到GET數組
var xyAr = [[1, 5], [2, 4], [3, 8]...];
我想將兩個不同的數組連接成一個。例如,我們有兩個數組JavaScript鏈接陣列
var x = [1,2,3,4,5,6,7,8,9];
y = [5,4,8,5,5,5,5,5,5];
我有興趣到GET數組
var xyAr = [[1, 5], [2, 4], [3, 8]...];
調用此功能在其他語言zip
並且可以在JS就像這樣:
function zip(a, b) {
return a.map(function(x, i) {
return [x, b[i]];
});
}
這是一個接受變量nu的參數MBER:
function zip() {
var args = [].slice.call(arguments, 0);
return args[0].map(function(_, i) {
return args.map(function(a) { return a[i] })
});
}
使用方法如下:
zip(array1, array2, array3)
「zip」通常不接受可變數量的參數嗎? –
@NiettheDarkAbsol:謝謝你的建議,我添加了一個可變參數版本。 – georg
你不需要可變參數。 OP說:「我想將2個不同的陣列連接成一個。」如果你正在寫圖書館,我會同意你的意見,但在這種情況下,你只是增加了一個毫無意義的複雜功能。 –
'XY = x.map(函數(項目,i)的{返回[項目,值Y [i]]; });' –
'x.map(function(el,i){return [el,y [i]];})'但是你真的不知道自己不這樣做。 –