Recursive Approach

In this method, we will call the function recursively and return the output with the spread operator to get the array output.

Example:

Javascript
function recursiveFactor(n, d) {
    if (n < 1) return [];    
    if (n == 1) return [1];
    if (n == 2) return [1,2];
    if(n/d<2)
    return [n];
    if (n % d == 0) return [d, ...recursiveFactor(n, d + 1)];
    return recursiveFactor(n, d + 1);
}

const num = 85;
console.log(
    "All factors of " +
        num + ": " +
        recursiveFactor(num, 1)
);

Output
All factors of 85: 1,5,17,85

JavaScript Program to Find All Divisors of a Number

In this article, we will demonstrate different approaches to writing a JavaScript Program to Find all Divisors of a Number. We will have an input number and print all the divisors of that number in the form of a resultant array.

Similar Reads

Methods to Find All Divisors of a Number

Table of Content Method 1: Naive ApproachMethod 2: Recursive ApproachMethod 3: Optimised Approach...

Method 1: Naive Approach

In this method, we will use a JavaScript loop to iterate the possible factors and Math.pow() method to get the square root of the number. Instead of Math.pow() method, we can also use Math.sqrt() or i*i < n condition....

Method 2: Recursive Approach

In this method, we will call the function recursively and return the output with the spread operator to get the array output....

Method 3: Optimised Approach

In this method, we will iterate only up to the square root of the number and add both the divisor and its complement (the number divided by the divisor) to the result array. This approach is more efficient than the naive approach, especially for large numbers....

Contact Us