`tail call optimization`是否有效?

时间:2016-09-26 10:37:01

标签: javascript node.js ecmascript-6 v8

index.js

function factorial(n, total) {
  if (n === 1) return total;
  return factorial(n - 1, n * total);
}

console.log(factorial(70000, 1))

我这样运行:

node --harmony_tailcalls index.js      

但它仍然给我一个错误:

function factorial(n, total) {                                                                                                                                                                                                                          
              ^                                                                                                                                                                                                                                     

RangeError: Maximum call stack size exceeded  

为什么呢?我读了这个Node.js tail-call optimization: possible or not?,但仍然没有用。

0 个答案:

没有答案