เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของอาร์เรย์ที่ซ้อนกันของ Numbers และค่าเท็จบางส่วน (รวมถึง 0) และสตริงบางตัวเช่นกัน ฟังก์ชันควรส่งคืนผลคูณของค่าตัวเลขที่มีอยู่ในอาร์เรย์ที่ซ้อนกัน
หากอาร์เรย์มี 0 อยู่บ้าง เราก็ไม่ควรสนใจมันเช่นกัน มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
ตัวอย่าง
const arr = [1, 5, 2, null, [ 2, 5, null, undefined, false, 5, [ 1, 3, false, 0, 2 ], 4, 2, false ], 4, 6, 0 ]; const recursiveMultiplication = arr => { let prod = 1; for(let i = 0; i < arr.length; i++){ if(Array.isArray(arr[i])){ prod *= recursiveMultiplication(arr[i]); }else{ prod *= arr[i] || 1; }; }; return prod; }; console.log(recursiveMultiplication(arr));
ผลลัพธ์
ต่อไปนี้เป็นผลลัพธ์ในคอนโซล -
576000