Open In App

JavaScript Program to Find Factorial of a Number using Recursion

Last Updated : 01 Sep, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

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.

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.

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

Approach 2: Using Ternary Operator with Recursive Approach

In this approach the recursive function uses the ternary operator to check if the base case (num === 0) is met, returning 1, otherwise calls itself with (num – 1) and multiplying num with the result.

Syntax:

condition ? value if true : value if false

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

factorial of 10 is, 10! = 10*9*8*7*6*5*4*3*2*1 = 3628800

Javascript




function factorialFunction(num) {
    return num === 0 ? 1 : num * factorialFunction(num - 1);
}
  
const num1 = 10;
const result = factorialFunction(num1);
console.log(result);


Output

3628800


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads