如何在MoonScript中编写递归函数?

时间:2014-06-25 03:32:07

标签: function recursion lua moonscript

是否有像MoonScript这样的arguments.callee JavaScript?

1 个答案:

答案 0 :(得分:5)

由于Moonscript函数定义为local func; func = function() end,因此它们都是递归的。这将打印120:

recursive = (n) -> return n > 1 and n*recursive(n-1) or 1
print recursive 5

据我所知,没有arguments.calee替代方案,但我还没有看到我需要它的情况。即使Mozilla's docs说"几乎没有使用命名函数表达式无法实现相同结果的情况"关于arguments.callee