I am trying to find the factorial of an integer using a function with the following constraint
1<=N<=10
Below is my code but when I execute it I am receiving NaN. Can you please explain and show me where is my mistake. Much appreciated!
const factorial = function (n) { if (n >= 1 && n <= 10) { return n * factorial(n - 1); } }; console.log(factorial(5));
Try to follow your code step by step and you will find the issue quite easily.
When you don't return anything and you tried to access the returned value you get undefined.
Imagine your type factorial(3)
Your code will run 3 * 2 * undefined
You need to return 1 when n = 1.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.