【Ruby/Rails】nil?/blank?/empty?/present?挙動の違い

~簡単な自己紹介~

  • 嫁と猫3匹と暮らすフルリモートの三十路SE
  • ブリッジSE的なポジションを務めることが多く、チーム運営、顧客折衝、ベンダーコントロールが得意
  • 得意言語はSQL、VBA
  • 管理や経営にも興味があり、資格で言うと行政書士、社労士もこっそり勉強中

Ruby/Railsのif文でよく使うnil?/blank?/empty?/present?の挙動をまとめました。

(empty?は使う機会があったら追加する予定です)

まとめ

nil?blank?present?
“test”falsefalsetrue
niltruetruefalse
“”falsetruefalse

nil?(nilかどうか)

p "test".nil? # false
p nil.nil?    # true
p "".nil?     # false

blank?(ブランクかどうか)

p "test".blank? # false
p nil.blank?    # true
p "".blank?     # true

present?(何らかの値が設定されているか)

p "test".present? # true
p nil.present?    # false
p "".present?     # false

以上になります。

お疲れさまでした。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です