JavaScript Interview Question #118
What is recursion in JavaScript?
Closures, Prototypes, Classes & Advanced Functions Mid-Level Intermediate
Quick Interview Answer
Recursion occurs when a function calls itself, directly or indirectly, until a base condition stops further calls. It is useful for naturally recursive structures such as trees, nested menus, directory structures, and certain algorithms.
Detailed Explanation
Recursion occurs when a function calls itself, directly or indirectly, until a base condition stops further calls. It is useful for naturally recursive structures such as trees, nested menus, directory structures, and certain algorithms.
Each ordinary recursive call consumes call-stack space. Very deep recursion can cause a stack overflow, so an iterative approach may be safer for unbounded depth.
Code Example
function factorial(n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
console.log(factorial(5)); // 120