A recursive function is one which defines a problem in terms of itself.
A recursive function calls itself directly or indirectly until it is stopped. If it is not stopped, then it will call itself forever.
Recursive functions let you perform a unit of work multiple times.
And while it is similar to the workings of a for / while loop, using recursive solutions affords a unique, faster and much more elegant approach to solving a problem.
Let’s write a countdown function, shall we:
countDown = (num) => {
for(let i = num; i>0; i--){
console.log(i);
}
}
countDown(6) //5,4,3,2,1
2. Using Recursion
countDown = (num) => {
if(num === 0)
return 0;
console.log(num);
countDown(num-1);
}
countDown(6) //5,4,3,2,1
Base Case
A recursive function usually contains what is referred to as a base case.
A base case is a condition that checks and stops the recursion.
In our above example, the condition:
if(num === 0)
return 0;
is the base case, a condition that checks our program.
Task: sum all numbers until the given one.
Solution:
Using recursion …
function sumAll(val){
if(n === 0){
return 0;
}else{
return val +=sumAll(val-1)
}
}
alert(sumAll(5)) //15
Service Workers are one of the core features of modern web applications, offering powerful capabilities…
A database-driven website is a dynamic site that utilizes a database to store and manage…
Toasts are user interface elements commonly used in software applications, especially in mobile app development…
JavaScript has long been synonymous with frontend web development, powering interactive and dynamic user interfaces…
Introduction: In the world of web development, CSS (Cascading Style Sheets) plays a crucial role…
JavaScript has emerged as a ubiquitous programming language, powering the modern web and extending its…