# 30 seconds of code

Back to Home#### factorial

mathrecursionbeginnerCalculates 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);