Calculates the factorial of a number.
Use recursion.
If n
is less than or equal to 1
, return 1
.
Otherwise, return the product of n
and the factorial of n - 1
.
Throws an exception if n
is a negative number.
代码片段
const factorial = n =>
n < 0
? (() => {
throw new TypeError('Negative numbers are not allowed!');
})()
: n <= 1
? 1
: n * factorial(n - 1);
使用样例
factorial(6); // 720