April 2018
Beginner to intermediate
426 pages
10h 19m
English
If we try to represent the steps to compute the factorial of any number n, we can define the steps as follows: (n) * (n - 1) * (n - 2) * (n - 3) * ... * 1.
We can write a function to compute the factorial of a number using a loop as demonstrated:
function factorialIterative(number) {
if (number < 0) return undefined;
let total = 1;
for (let n = number; n > 1; n--) {
total = total * n;
}
return total;
}
console.log(factorialIterative(5)); // 120
We can start computing the factorial starting at the given number, and decrease n until it has a value of 2 since the factorial of 1 is 1 and it is already included in the total variable. The factorial of zero is also 1. The factorial of negative numbers will not be computed.