如何在 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 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告