在 js 下面,我可以写出这样的代码:
var more = function(){ var v; var result = function(){ v ++; return v; } return result }
但是在 ruby 下面,好像是不支持这样的嵌套环境的,我如何写出类似上面的代码?我不想用 class,而只是用函数组合?
用 lambda:
more = -> { v = 0 -> { v += 1 } } moe = more.() moe.() # 1 moe[] # 2 moe.[] # 3 moe.call # 4
#1 楼 @luikore 哈,我还没有想到可以用 lambda,解决了问题,非常感谢!