exists
関数を使って、あるキーがハッシュ内に存在するかを調べることができます。
if (exists $hash{'key'}) {
# キー 'key' が存在する
}
値の真偽値を調べているわけではないので、以下のようにキーの存在を判断するのは間違いです。
# 間違った方法
if ($hash{'key'}) {
# これでは値の真偽値を調べているだけ!
}
このようにすると、$hash{'key'}
の値として数値の 0 が格納されている場合に、偽 (false) と判断されてしまいます。