@n3okill/utils
Version:
Many javascript helpers
25 lines • 858 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.chunk = chunk;
const isNumber_1 = require("../type/isNumber");
const toArray_1 = require("./toArray");
/**
* Return an array with original array divided in chunks
* @param arr Original array
* @param size Size of each chunk
* @returns An array containing the chunks of the source array
*/
function chunk(arr, size) {
const source = (0, toArray_1.toArray)(arr);
const target = [];
if (!(0, isNumber_1.isNumber)(size) || size < 1) {
throw new TypeError("'size' argument must be a number bigger than '0'");
}
const length = source.length;
for (let i = 0; i < length; i += size) {
const a = i + size <= length ? i + size : length;
target.push(source.slice(i, a));
}
return target;
}
//# sourceMappingURL=chunk.js.map
;