เราจำเป็นต้องเขียนฟังก์ชัน 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 ] ]