Factorial using Recursion in JavaScript

To calculate the factorial of a number “N” using recursion, we first establish base cases: if N is 0 or 1, the factorial is 1. Otherwise, we recursively compute N * factorial(N-1) to find the product of all positive integers up to N.

Syntax:

function factorial(n) {
if (n === 0 || n === 1) {
// Code...
}
}

Example: In this example, we are using the above-explained approach.

Javascript




function factorial(n) {
    if (n === 0 || n === 1) {
        return 1;
    } else {
        return n * factorial(n - 1);
    }
}
let num1 = 6;
let result = factorial(num1);
console.log("The factorial of given number is :" + result);


Output

The factorial of given number is :720

JavaScript Program to Find Factorial of a Number using Recursion

In this article, we are going to learn about finding a Factorial of a Number using Recursion. Calculating the factorial of a number using recursion means implementing a function that calls itself to find the factorial of a given number. The factorial of a non-negative integer “n” is the product of all positive integers less than or equal to “n”.

The factorial of a positive number n is given by:

factorial of n (n!) = 1 * 2 * 3 * 4 * . . . * n

Example:

Input : N = 6 
Output : The factorial of given number is : 720
Explanation: 6 * 5 * 4 * 3 * 2 * 1 = 720
Hence factorial of 6 is : 720

There are some common approaches that can be used to Find Factorial of Number Using Recursion, which is listed below:

  • Factorial using Recursion in JavaScript
  • Using Ternary Operator with Recursive Approach

We will explore all the above methods along with their basic implementation with the help of examples.

Similar Reads

Approach 1: Factorial using Recursion in JavaScript

To calculate the factorial of a number “N” using recursion, we first establish base cases: if N is 0 or 1, the factorial is 1. Otherwise, we recursively compute N * factorial(N-1) to find the product of all positive integers up to N....

Approach 2: Using Ternary Operator with Recursive Approach

...

Contact Us