如何在 JavaScript 中編寫一個函式,返回陣列中每個整數的階乘?


這裡需要我們編寫一個 JavaScript 函式,該函式接收一個數字陣列作為輸入,並返回另一個數組,其中包含輸入陣列中對應元素的階乘。我們將首先編寫一個遞迴方法,該方法接收一個數字並返回其階乘,然後我們將遍歷陣列,計算陣列中每個元素的階乘,最後返回新的階乘陣列。

因此,讓我們為此編寫程式碼。

示例

const arr = [4, 8, 2, 7, 6, 20, 11, 17, 12, 9];
const factorial = (num, fact = 1) => {
   if(num){
      return factorial(num-1, fact*num);
   };
   return fact;
};
const factorialArray = arr => arr.map(element => factorial(element));
console.log(factorialArray(arr));

輸出

控制檯輸出將為:

[
   24,
   40320,
   2,
   5040,
   720,
   2432902008176640000,
   39916800,
   355687428096000,
   479001600,
   362880
]

更新於: 2020年8月20日

591 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告