此阶乘方法中每个函数调用的结果存储在哪里?

Where is the result of each function call stored in this factorial method?

这是一个对象,其方法将通过递归 return 数字的阶乘。我无法理解的是,当函数再次调用自身并将 inputNumber 乘以自身 -1 时,factorialized 变量的值存储在哪里。有人可以给我解释一下吗?

const Calculate = {
  factorial(inputNumber) {
    if (inputNumber < 2) { return 1 };
    const factorialized = inputNumber * this.factorial(inputNumber - 1);
    
    return factorialized;
    }
  }

Calculate.factorial(5);


很多语言都有Memory Heap为它们的操作等保存价值

假设您的函数将执行 3 次:

  • 第1次执行的结果将分配到Memory Heap
  • 的第[k]个位置
  • 那么第2次执行会分配到第[k+1]个位置
  • 第3次执行分配到第[k+2]个位置计算值存入第[k+2]个位置
  • 那么第2个函数将使用第[k+2]个位置来计算他们的结果
  • 那么第一个函数将使用第[k+1]个位置来计算他们的结果
  • 最终会return值

Some addtion information