Files
30-seconds-of-code/snippets/factorial.md
Angelos Chalaris e37de0ff2a Resolve #156
2017-12-16 19:02:23 +02:00

14 lines
372 B
Markdown

### Factorial
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.
```js
const factorial = n =>
n < 0 ? (() => { throw new TypeError('Negative numbers are not allowed!') })()
: n <= 1 ? 1 : n * factorial(n - 1);
// factorial(6) -> 720
```