chunk - nodef/extra-iterable GitHub Wiki

Break iterable into chunks of given size.

function chunk(x, n, s)
// x: an iterable
// n: chunk size [1]
// s: chunk step [n]
const xiterable = require('extra-iterable');

var x = [1, 2, 3, 4, 5, 6, 7, 8];
[...xiterable.chunk(x, 3)];
// → [1, 2, 3], [4, 5, 6], [7, 8](/nodef/extra-iterable/wiki/1,-2,-3],-[4,-5,-6],-[7,-8)

[...xiterable.chunk(x, 2, 3)];
// → [1, 2], [4, 5], [7, 8](/nodef/extra-iterable/wiki/1,-2],-[4,-5],-[7,-8)

[...xiterable.chunk(x, 4, 3)];
// → [1, 2, 3, 4], [4, 5, 6, 7], [7, 8](/nodef/extra-iterable/wiki/1,-2,-3,-4],-[4,-5,-6,-7],-[7,-8)

References