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