เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้อาร์เรย์ของตัวอักษรที่ซ้อนกันเป็นอาร์กิวเมนต์เดียว ฟังก์ชันควรสร้างอาร์เรย์ใหม่ที่มีองค์ประกอบตามตัวอักษรทั้งหมดที่มีอยู่ในอาร์เรย์อินพุตแต่ไม่มีการซ้อน
ตัวอย่างเช่น −
หากอาร์เรย์อินพุตเป็น −
const arr = [ 1, 3, [5, 6, [7, [6, 5], 4], 3], [4] ];
จากนั้นอาร์เรย์เอาต์พุตควรเป็น −
const output = [1, 3, 5, 6, 7, 6, 5, 4, 3, 4];
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const arr = [ 1, 3, [5, 6, [7, [6, 5], 4], 3], [4] ]; const flattenArray = (arr = []) => { const res = []; for(let i = 0; i < arr.length; i++){ const el = arr[i]; if(Array.isArray(el)){ res.push(...flattenArray(el)); }else{ res.push(el); }; }; return res; }; console.log(flattenArray(arr));
ผลลัพธ์
ต่อไปนี้เป็นผลลัพธ์บนคอนโซล -
[ 1, 3, 5, 6, 7, 6, 5, 4, 3, 4 ]