Group a flat array in to a multidimensional one, by chunk size (number of elements per sub-array)
const arrayChunk = (array, chunkSize) =>
Array(Math.ceil(array.length / chunkSize))
.fill()
.map((_, index) => index * chunkSize)
.map(it => array.slice(it, it + chunkSize))