สมมติว่าเราควรเขียนฟังก์ชันที่ใช้อาร์เรย์ที่ซ้อนกันของ Numbers และส่งกลับผลรวมของตัวเลขทั้งหมด เราจำเป็นต้องทำเช่นนี้โดยไม่ใช้วิธี Array.prototype.flat()
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
ตัวอย่าง
const arr = [ 5, 7, [ 4, [2], 8, [1,3], 2 ], [ 9, [] ], 1, 8 ]; const findNestedSum = (arr) => { let sum = 0; for(let len = 0; len < arr.length; len++){ sum += Array.isArray(arr[len]) ? findNestedSum(arr[len]) : arr[len]; }; return sum; }; console.log(findNestedSum(arr));
ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็น -
50