在Ruby中是否可以返回一个带参数的方法以便以后执行。
我尝试的是这个:
def my_method(a, b)
p a
p b
end
def action
return "my_method", ["A", "B"]
end
method, pars = action
send(method, *pars)
这是可行的,但是如果my_method的参数是复杂的结构,而不仅仅是字符串之类的,那么我不能把它们作为字符串放到参数数组中,那么也许有一个更优雅的方法来解决这个问题,那么有没有可能做一些类似return my_method(a,b)
的事情,而不执行它,而是真正返回以供以后处理?
1条答案
按热度按时间pkwftd7m1#
你可以使用lambdas,如果你返回一个lambda,你只需要稍后执行
.call
。