Rails

迷いやすい条件分岐「unless」についてのメモ

09/10/2023

 

条件分岐「unless」

 

 

unlessは個人的に読み解きの際に不安になるメソッドです。

今後のために記録しておきます。

unless

 

unless 式 [then] 式 ... [else 式 ... ] end

 

 

unless は if と反対で、条件式が偽の時に then 以下の式を評価します。unless 式にelsif を指定することはできません。

参照元:Railsガイド 制御構造 条件分岐 unless

unless  修飾子

 

特に私が「どっちだったかな?」と迷うのが後置unlessとも呼ばれるこのタイプです。

シンプルなのは良いのですが、コード内容によって左辺を評価するかどうか迷います。

 

 

式 unless 式

 

 

 

右辺の条件が成立しない時に、左辺の式を評価してその結果を返します。条件が成立すれば nil を返します。

参照元:Railsガイド 制御構造 条件分岐 unlesssy修飾子

 

 

unless という言葉にとらわれすぎず、

 

右辺が成立しない(偽)なら、左辺を評価する

 

と意識しようと思います。

 

-Rails
-,