1. ホーム
  2. ruby

[解決済み] Rubyで!!!はどういう意味ですか?

2022-06-10 15:46:50

質問

ちょっと気になったので !! はRubyでは何なのでしょうか?

どのように解決するのですか?

ではありません。

値をブーリアンに変換するのに使います。

!!nil   #=> false
!!"abc" #=> true
!!false #=> false

Ruby の false 値は以下の通りなので、通常は使用する必要はありません。 nilfalse であるため、通常はこの規約をそのままにしておくのがベストです。

と考えてください。

!(!some_val)

合法的に使われることのひとつは、巨大なデータの塊が返されるのを防ぐことです。 例えば、3MB の画像データを has_image? メソッドで 3MB の画像データを返したくはないでしょうし、 ユーザオブジェクト全体を logged_in? メソッドでユーザーオブジェクト全体を返したくない場合もあるでしょう。 使用方法 !! を使うと、これらのオブジェクトは単純な true / false .