我们需要编写一个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 ] ]