ハッシュとシンボル
railsチュートリアルをやってます。
第4章まで進めてて、4.3.3ハッシュとシンボル が気になった。
>> h1 = { :name => "Michael Hartl", :email => "michael@example.com" } => {:name=>"Michael Hartl", :email=>"michael@example.com"} >> h2 = { name: "Michael Hartl", email: "michael@example.com" } => {:name=>"Michael Hartl", :email=>"michael@example.com"} >> h1 == h2 => true
となるのに
>> h2 = { name: "Michael Hartl", email: "michael@example.com" } => {:name=>"Michael Hartl", :email=>"michael@example.com"} >> h3 = { ”name” => "Michael Hartl", "email" => "michael@example.com" } => {"name"=>"Michael Hartl", "email"=>"michael@example.com"} >> h2 == h3 => false
となる。
ここらへんの動きがなんとなくモヤモヤする。
シンボルに - が使えないから、仕方なく文字列を使うっていうのが主な理由らしいのですが。。
シンボルで無理やり - を使おうとするとこうなるのかな?
無理に-使おうとするとこういう書き方になるらしい。
>> {:"hoge-fuga" => "piyo"}[:"hoge-fuga"] => "piyo"