nilとrailsにはblankもあるらしいけど、これしっかり覚える。すべてのオブジェクトに定義されている。nilのときのみtrueを返す。文字列の長さが0のとき、または配列が空のときにTrueを返す。数値には定義されていない。いずれかでTrueを返す。・nil?は、nilのときtrue。(未定義の変数に使うとエラーになる。(未定義の変数に使うとエラーになる。PHPよりわかり易いと思った。・変数が定義済みかを確認するには、defined?を使える。0d.nil?falsed.empty?ERRORz.nil?ERROR定義してない変数にnil使ってもエラー。falseでも0でも定義さえしてたら、nilじゃない。0falsefalseは0でもnilでもない。[]f.length0f.empty?truef.nil?falseemptyは文字列、配列に使える。consoleでやってみる。falsed.empty?ERRORd.blank?trued.present?falsefalseの場合もblank?はtrueを返す。{}e.empty?truee.blank?truee.present?falsef(未定義)ERRORf.empty?ERRORf.blank?ERRORf.present?ERRORあら未定義だとblankもpresentもエラーになる。railsのコントローラ上で試してみてもエラーになった。定義済みじゃないとエラーになるのか。c[:c].nil?上記をコントローラでやると、development.logに下記が表示される。nil配列の要素に対しては、blankを使ってもエラーにならないらしい。consoleでやってみる。{}c['a'].blank?truec['a'].empty?ERRORc[:a].nil?trueあとは一応クラスつくって試してみる。Hoge.newa.namenila.name.nil?truea.name.empty?ERRORHoge.nil?falseHoge.blank?falseHoge.present?truea.nil?falsea.blank?falsea.present?true変数が存在するか確認するには、definedが使えるらしい。nil未定義の変数に使ったらnilが返ってくる。存在する配列の存在しない要素に使うと、methodって返ってくる。存在するオブジェクトの値がnilのメンバ変数に使うと、methodって返ってくる。2引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。