JavaScript 中巢狀陣列中存在的數字的乘積


我們要求編寫一個 JavaScript 函式,該函式接受一個包含數字巢狀陣列和一些假值(包括 0)以及一些字串的陣列,而該函式應返回巢狀陣列中存在的數字值的乘積。如果陣列中包含一些 0,我們也應該忽略它們。

示例

程式碼如下所示 −

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));

輸出

控制檯中的輸出 −

57600

更新日期:14-Oct-2020

194 次瀏覽

開始您的 職業生涯

透過完成課程獲得認證

開始學習
廣告