将数组转换为" 2-tuples"的数组的Javascript函数

时间:2016-05-17 08:07:51

标签: javascript arrays function

如何编写一个javascript函数,将数组作为输入[0, 1, 2, 3, 4, 5, 6, 7, 8]并返回[ [0, 1], [2, 3], [4, 5], [6, 7], [8] ]

1 个答案:

答案 0 :(得分:2)

您可以使用Array#reduce和索引对部件进行分组。

var array = [0, 1, 2, 3, 4, 5, 6, 7, 8],
    result = array.reduce(function (r, a, i) {
        if (i % 2) {
            r[r.length - 1].push(a);
        } else {
            r.push([a]);
        }
        return r;
    }, []);

document.write('<pre>' + JSON.stringify(result, 0, 4) + '</pre>');