在 JavaScript 中分块数组
我们需要编写一个 JavaScript 函数,获取一个字面量数组,并返回一个新数组,数组元素按长度为 2 的子数组分块。如果原始数组的长度不能被 2 整除,则最后一个子数组应只包含一个元素。
例如:如果输入数组为 -
const arr = [1, 2, 3, 4, 5, 6, 7];
则输出应为 -
const output = [[1, 2], [3, 4], [5, 6], [7]]
因此,让我们编写此函数的代码 -
示例
代码为 -
const arr = [1, 2, 3, 4, 5, 6, 7]; const chunk = arr => { const size = 2; const chunkedArray = []; for (let i = 0; i < arr.length; i++) { const last = chunkedArray[chunkedArray.length - 1]; if(!last || last.length === size){ chunkedArray.push([arr[i]]); }else{ last.push(arr[i]); } }; return chunkedArray; }; console.log(chunk(arr));
输出
控制台输出为 -
[ [ 1, 2 ], [ 3, 4 ], [ 5, 6 ], [ 7 ] ]
广告