We are required to write a JavaScript function that takes in an array of nested arrays of Numbers and some falsy values (including 0) and some strings as well and the function should return the product of number values present in the nested array. If the array contains some 0s, we should ignore them as well.
Example
The code for this will be −
const arr = [ 1, 2, null, [ 2, 5, null, undefined, false, 5, [ 1, 3, false, 0, 2 ], 4, 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));
Output
The output in the console −
57600