ぼっち演算子とは
&.(Safe Navigation Operator)は、通称ぼっち演算子と呼ばれており
ぼっち演算子は、オブジェクトに対してとあるメソッドを呼び出した時、そのオブジェクトがnilでない場合は、実行結果を返します。一方で、nilの場合は、nilを返してくれます。
ぼっち演算子を使って、テキストの情報を取得する
# 変数@itemに情報が定義されている場合
[1] pry(main)> @item&.text
=> "アイテム"
# 変数@itemがnilの場合
[2] pry(main)> @item&.text
=> nil
通常のオブジェクトメソッドという書き方では、オブジェクトがnilの場合はundefined methodのエラーになってしまいます。
ですがぼっち演算子を使う事によりif文を使わず簡潔化する事が出来ます
例
# if文を使用した場合
@item.tags.first.tag_name if @item.tags.first.present?
# ぼっち演算子を使用した場合
@item.tags&.first&.tag_name
このようにシンプルな記述に出来ます。