JavaScript链接数组

JavaScript linking arrays

本文关键字:数组 链接 JavaScript      更新时间:2023-09-26

我想把两个不同的数组连接成一个。例如,我们有两个阵列

var x = [1,2,3,4,5,6,7,8,9];
y = [5,4,8,5,5,5,5,5,5];

我有兴趣获得阵列

var xyAr = [[1, 5], [2, 4], [3, 8]...];

这个函数在其他语言中被称为zip,可以在js中完成,如下所示:

function zip(a, b) {
    return a.map(function(x, i) {
        return [x, b[i]];
    });
}

http://jsfiddle.net/kQuuz/

这里有一个接受可变数量参数的版本:

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)