对象内部的递归阶乘 Javascript
Recursive Factorial inside Object Javascript
const Calculate = {
factorial(n) {
return n * factorial(n - 1)
}
}
let newNumber = Calculate.factorial(8);
因此,每次我调用该函数时,都会收到阶乘未定义错误。我猜它与对象内部的函数有关。需要一些帮助来理解发生了什么。提前谢谢你
对象不创建变量作用域,所以调用方法时需要引用对象。
您还可以使用 this
来引用调用该方法的对象,因此您不必 hard-code 变量名。
const Calculate = {
factorial(n) {
if (n <= 1) {
return 1;
}
return n * this.factorial(n - 1)
}
}
let newNumber = Calculate.factorial(8);
console.log(newNumber);
const Calculate = {
factorial(n) {
return n * factorial(n - 1)
}
}
let newNumber = Calculate.factorial(8);
因此,每次我调用该函数时,都会收到阶乘未定义错误。我猜它与对象内部的函数有关。需要一些帮助来理解发生了什么。提前谢谢你
对象不创建变量作用域,所以调用方法时需要引用对象。
您还可以使用 this
来引用调用该方法的对象,因此您不必 hard-code 变量名。
const Calculate = {
factorial(n) {
if (n <= 1) {
return 1;
}
return n * this.factorial(n - 1)
}
}
let newNumber = Calculate.factorial(8);
console.log(newNumber);