为什么我使用了尾递归优化,还是会产生调用栈溢出的情况呢?
代码如下:
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
largeQ
相关分类