Yogesh Chauhan's Blog

Recursion in JavaScript

in JavaScript on April 24, 2021

Recursion is when a function calls itself and the function that does is called a recursive function.

You have to be careful writing the recursive function because if it can overflows the stack calling itself again and again.

Just like this factorial recursive function

function factorial(a) {
  if (a == 0) {
    return 1;
  } else {
    return a * factorial(a-1);


Or like this power recursive function

function power(a,b) {
  if (b == 0) {
    return 1;
  } else {
    return a * power(a,b-1);


Both of those functions above call themselves multiple times till they meet the return condition.

Performance wise, calling a function itself is not always effective since its slower than the regular looping function. It’s completely up to the programmer what they want to go with.

If you’re in a dilemma of choosing between the regular loop or a recursive function, I would suggest to test out both ways before going live and compare the performance.

If the program is not big enough then you might find the recursive choice better depending on your program logic.

Most Read

#1 Solution to the error “Visual Studio Code can’t be opened because Apple cannot check it for malicious software” #2 How to add Read More Read Less Button using JavaScript? #3 How to check if radio button is checked or not using JavaScript? #4 Solution to “TypeError: ‘x’ is not iterable” in Angular 9 #5 PHP Login System using PDO Part 1: Create User Registration Page #6 How to uninstall Cocoapods from the Mac OS?

Recently Posted

#Apr 8 JSON.stringify() in JavaScript #Apr 7 Middleware in NextJS #Jan 17 4 advanced ways to search Colleague #Jan 16 Colleague UI Basics: The Search Area #Jan 16 Colleague UI Basics: The Context Area #Jan 16 Colleague UI Basics: Accessing the user interface
You might also like these
How to use @each rule with key-value pair in SCSS?SCSSCONCAT and CONCAT_WS Functions in PostgresPostgresHow to scroll contents of a an element vertically using JavaScript?JavaScriptPHP __construct() functionPHPWhat does useEffect do in React?ReactCasting in PostgreSQLPostgresAll possible ways you can Insert Data in PostgresPostgresHow to get the full URL of current page in PHP?PHPSQL Right JoinSQL/MySQLWordPress Plugin: Things to knowWordPressHow to force your website to load securely with an .htaccess file?MiscellaneousHow to display random posts in WordPress?WordPress