关于尾递归优化问题

为什么我使用了尾递归优化,还是会产生调用栈溢出的情况呢?

代码如下:


function tcoFactorial(n, index = 1, lastResult = 1) {

  if(n === 1) {

    return lastResult

  } else {

    return tcoFactorial(n-1, index + 1, lastResult * (index+1))

  }

}

console.log(tcoFactorial(100000))

错误:


RangeError: Maximum call stack size exceeded


慕码人8056858
浏览 440回答 1
1回答

largeQ

V8对尾递归的优化做的并不好
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript