如何使用 JavaScript 中具有约束的函数查找阶乘
How to find factorial using a function with constraints in JavaScript
我正在尝试使用具有以下约束条件的函数求整数的阶乘
1<=N<=10
下面是我的代码,但是当我执行它时,我收到了 NaN!你能解释一下并告诉我我的错误在哪里吗?非常感谢!
const factorial = function (n) {
if (n >= 1 && n <= 10) {
return n * factorial(n - 1);
}
};
console.log(factorial(5));
尝试按照您的代码逐步执行,您会很容易找到问题。
当您没有 return 任何东西并尝试访问 returned 值时,您会得到未定义的值。
想象一下你的类型 factorial(3)
您的代码将 运行 3 * 2 * undefined
当 n = 1 时,您需要 return 1。
我正在尝试使用具有以下约束条件的函数求整数的阶乘
1<=N<=10
下面是我的代码,但是当我执行它时,我收到了 NaN!你能解释一下并告诉我我的错误在哪里吗?非常感谢!
const factorial = function (n) {
if (n >= 1 && n <= 10) {
return n * factorial(n - 1);
}
};
console.log(factorial(5));
尝试按照您的代码逐步执行,您会很容易找到问题。
当您没有 return 任何东西并尝试访问 returned 值时,您会得到未定义的值。
想象一下你的类型 factorial(3)
您的代码将 运行 3 * 2 * undefined
当 n = 1 时,您需要 return 1。