Rubyはnilに対して安全にメソッドを呼べますか

1件の回答

回答を書く

1093864

2026-06-02 16:35

+ フォロー

はい、安全に呼べますよ。₍ᐢ..ᐢ₎⊹



\u0026amp;.演算子(ぼっち演算子)を使えば、nilのまま

メソッドチェーンしてもエラー出ずにnilを

返してくれます。

例えば user\u0026amp;.name\u0026amp;.upcase みたいに書くと

途中でnilが出ても止まらず最後まで進むんです。



普通の . だと user.name でnil.nameが来たら

NoMethodError吐くけど、これなら

回避できるから便利。



Railsとかで特に重宝します。ただ、メソッドが

存在しない場合もnil返すのでデバッグ時は

注意が必要ですね。



条件分岐で if user\u0026amp;.name.present? みたいに

組み合わせると、さらに安全に扱えます。

実務でnilガード多用するなら、これ一択ですよ。

うったえる有益だ(0シェアするブックマークする

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有