1. ホーム
  2. ruby

定数がすでに定義されているかどうかを確認する

2023-07-22 13:52:03

質問

これは簡単なものだと思います。 次の例で、定数がすでに定義されているかどうかを確認するにはどうしたらよいでしょうか。

#this works
var = var||1
puts var
var = var||2
puts var

#this doesn't
CONST = CONST||1
puts CONST
CONST = CONST||2
puts CONST

=> 1
   1
   uninitialized constant CONST (NameError)

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

CONST = 2 unless defined? CONST

参照 を参照してください。 をご覧ください。 defined? 演算子を使用します。

追伸:そして将来的には、あなたが欲しくなるであろう var ||= 1 の代わりに var = var||1 .