I have written a function which takes two parameters: (1) an Array, (2) size of the chunk.
function chunkArrayInGroups(arr, size) {
var myArray = [];
for(var i = 0; i < arr.length; i += size) {
myArray.push(arr.slice(i,size));
}
return myArray;
}
I want to split this array up into chunks of the given size.
chunkArrayInGroups(["a", "b", "c", "d"], 2)
should return: [["a", "b"], ["c", "d"]]
.
I get back: [["a", "b"], []]
You misunderstood what the slice
parameters mean. The second one is the index until which (not included) you want to get the subarray. It's not a length.
array.slice(from, to); // not array.slice(from, length)
function chunkArrayInGroups(arr, size) {
var myArray = [];
for(var i = 0; i < arr.length; i += size) {
myArray.push(arr.slice(i, i+size));
}
return myArray;
}
console.log(chunkArrayInGroups(["a", "b", "c", "d"], 2));
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With