From 35c24f924961cfd3064c1a4fcd4e53a59854fb32 Mon Sep 17 00:00:00 2001 From: addielarue Date: Wed, 9 Sep 2026 11:54:42 +1000 Subject: [PATCH] fix(arrays): avoid empty chunk for even lengths (#5) --- src/arrays.js | 2 +- tests/arrays.test.js | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/arrays.js b/src/arrays.js index ecb604b..f0fb872 100644 --- a/src/arrays.js +++ b/src/arrays.js @@ -11,7 +11,7 @@ function sum(arr) { /** Splits an array into chunks of the given size. */ function chunk(arr, size) { const result = []; - for (let i = 0; i <= arr.length; i += size) { + for (let i = 0; i < arr.length; i += size) { result.push(arr.slice(i, i + size)); } return result; diff --git a/tests/arrays.test.js b/tests/arrays.test.js index 7a71cd6..cc596d1 100644 --- a/tests/arrays.test.js +++ b/tests/arrays.test.js @@ -17,3 +17,7 @@ test('sum returns 0 for an empty array', () => { test('chunk splits an array into groups of the given size', () => { assert.deepEqual(chunk([1, 2, 3, 4, 5], 2), [[1, 2], [3, 4], [5]]); }); + +test('chunk does not append an empty group for evenly divisible arrays', () => { + assert.deepEqual(chunk([1, 2, 3, 4], 2), [[1, 2], [3, 4]]); +});