在 IF block 中,我需要检查某些条件是否为真,如果为真,则退出 block 。
#something like this
if 1 == 1
return if some_object && some_object.property
puts 'hello'
end
我该怎么做?
最佳答案
你不能像那样跳出if
。您可以做的是向其添加一个子句:
if (cond1)
unless (cond2)
# ...
end
end
如果您遇到逻辑嵌套过多的问题,并且需要一种更好地展平它的方法,也许您想做的是事先计算一个变量,然后仅在需要时才深入研究:
will_do_stuff = cond1
will_do_stuff &&= !(some_object && some_object.property)
if (will_do_stuff)
# ...
end
有很多方法可以避免深度嵌套结构而不必破坏
它。
关于Ruby - 退出 IF block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7825093/