Steps to get the solution:
1. We have to take exit condition considering that factorial of 0 or 1 is 1
2. In each recursive call we will return num*factorial(num-1) as factorial of number for e.g 3 is 3*2*1
3. In first pass 3*factorial(2) is returned
4. In next pass we will have 3*2*factorial(1)
5. As we know factorial of 1 is 1, so we will get 3*2*1 i.e 6
Code:
function factorial(num) {
if(num ==0 || num==1) {
return 1;
}
return num*factorial(num-1);
}
let result = factorial(3)
console.log(result) // output: 6