T14*_*145 1 ruby optimization performance
我有几个代码段,有几个分组的"或"条件,如下所示:
def some_method
first_var || second_var || false
end
Run Code Online (Sandbox Code Playgroud)
如果有的话,避免这种情况的最佳方法是什么?我希望它保持紧凑和高效.我的猜测是,这是一样好,但是在脑海中有一些东西一直在说必须有更好的方法.
如果您不想添加|| false,但不想nil返回,则可以执行以下操作:
def some_method
!!(first_var || second_var)
end
Run Code Online (Sandbox Code Playgroud)
这样,如果返回值(first_var || second_var)是nil一个false将被退回:
!!true
# => true
!!false
# => false
!!nil
# => false
Run Code Online (Sandbox Code Playgroud)