iteragain
Version:
Javascript Iterable/Iterator/Generator-function utilities.
22 lines • 721 B
JavaScript
import toArray from './toArray';
import toIterator from './toIterator';
import toIterableIterator from './toIterableIterator';
export function divide(...args) {
if (args.length === 1)
return it => divide(it, args[0]);
const n = args[1];
const array = toArray(args[0]);
const result = [];
const quotient = Math.floor(array.length / n);
const remainder = array.length % n;
let stop = 0;
let start = 0;
for (let i = 1; i < n + 1; i++) {
start = stop;
stop += i <= remainder ? quotient + 1 : quotient;
result.push(toIterableIterator(toIterator(array.slice(start, stop))));
}
return result;
}
export default divide;
//# sourceMappingURL=divide.js.map