0

我想将一个数组拆分为一组从末尾开始的值,并将开头作为剩余数组。这是目标的示例:

arr = [0,1,2,3,4,5,6,7,8,9,10,11]
interval = 5
#chop
output = [[0,1],[2,3,4,5,6],[7,8,9,10,11]]

这样做最有效的方法是什么?

谢谢你的帮助?

4

3 回答 3

3

不能代表 CoffeeScript,但在 JavaScript 中,我认为没有什么专门做这件事的,你只需要一个slice调用循环。要么使用负索引(这意味着“从头开始”)向后循环,要么只在src.length % interval第一遍中获取第一个项目。

于 2013-05-04T07:49:41.660 回答
2
var arr = [0,1,2,3,4,5,6,7,8,9,10,11],
    interval = 5,
    output = [];

while (arr.length >= interval) {
    output.unshift(arr.splice(-interval, interval));
}
output.unshift(arr);

console.log(output);
于 2013-05-04T08:01:19.923 回答
-1

撤销。片。推。撤销。

于 2013-05-04T08:02:25.400 回答