Rubyのコロン:
と太い矢印=>
の違いは何ですか?またはいつ何を使用するのですか?
:foo => true
foo: true
構文はハッシュキー/値のペアを定義するためのものであり、違いはRubyバージョンによって異なります。
Ruby 1.8とRuby 1.9の両方でサポートされています
:foo => true
Ruby 1.9でのみサポート
foo: true
Ruby 1.9で開発している場合は、おそらく次の構文を使用する必要があります。
foo: true
それはコミュニティが進んでいる方向であるように見えるので。
後者は、1.9で導入された新しいハッシュ構文です。たとえば、次を参照してください。
http://breakthebit.org/post/8453341914/Ruby-1-9-and-the-new-hash-syntax
2つのラインが生成するハッシュは同じです。