陣列中的遞迴乘法 - JavaScript


我們需要編寫一個 JavaScript 函式,它接受一個巢狀陣列,該陣列包含數字的一些錯誤值(包括 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

更新於: 14-Sep-2020

300 次瀏覽

開啟你的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.