如何在Javascript中的原型函数中编写递归函数?

如何在Javascript中的原型函数中编写递归函数?,javascript,numbers,prototype,Javascript,Numbers,Prototype,比方说,我正在尝试向javascript中的所有“数字”添加一个功能,以拥有一个名为“阶乘”的函数。例如: var num = 5 console.log( num.factorial() ) // should display 120 为了实现这一点,下面是以下功能 Object.defineProperty(Number.prototype, "factorial", { enumerable: false, value: function() { if(this <

比方说,我正在尝试向javascript中的所有“数字”添加一个功能,以拥有一个名为“阶乘”的函数。例如:

var num = 5
console.log( num.factorial() ) // should display 120
为了实现这一点,下面是以下功能

Object.defineProperty(Number.prototype, "factorial", {
  enumerable: false,
  value: function() {
    if(this <= 1) return 1;
    return this * factorial(this - 1);
  }
})
Object.defineProperty(Number.prototype,“阶乘”{
可枚举:false,
值:函数(){

如果(这这应该可以做到:

Object.defineProperty(Number.prototype, "factorial", {
    enumerable: false,
    value: function() {
        if(this <= 1)
            return 1;
        return this * (this - 1).factorial();
    } //                   ^
});
Object.defineProperty(Number.prototype,“阶乘”{
可枚举:false,
值:函数(){

如果(这这应该可以做到:

Object.defineProperty(Number.prototype, "factorial", {
    enumerable: false,
    value: function() {
        if(this <= 1)
            return 1;
        return this * (this - 1).factorial();
    } //                   ^
});
Object.defineProperty(Number.prototype,“阶乘”{
可枚举:false,
值:函数(){

如果(这这应该可以做到:

Object.defineProperty(Number.prototype, "factorial", {
    enumerable: false,
    value: function() {
        if(this <= 1)
            return 1;
        return this * (this - 1).factorial();
    } //                   ^
});
Object.defineProperty(Number.prototype,“阶乘”{
可枚举:false,
值:函数(){

如果(这这应该可以做到:

Object.defineProperty(Number.prototype, "factorial", {
    enumerable: false,
    value: function() {
        if(this <= 1)
            return 1;
        return this * (this - 1).factorial();
    } //                   ^
});
Object.defineProperty(Number.prototype,“阶乘”{
可枚举:false,
值:函数(){

如果(这也许你应该用这个。阶乘而不是阶乘?也许你应该用这个。阶乘而不是阶乘?也许你应该用这个。阶乘而不是阶乘?也许你应该用这个。阶乘而不是阶乘?是的,它做了。非常感谢。是的,它做了。非常感谢。是的,它做了。非常感谢。是的,它做了。非常感谢。