Ruby中的冒号:
和胖箭头有什么区别?=>
或者什么时候用什么?
:foo => true
foo: true
语法用于定义 Hash 键/值对,区别取决于 Ruby 版本。
Ruby 1.8 和 Ruby 1.9 都支持
:foo => true
仅在 Ruby 1.9 中受支持
foo: true
如果您使用 Ruby 1.9 进行开发,您可能应该使用以下语法:
foo: true
因为这似乎是社区前进的方向。
后者是 1.9 中引入的新的 Hash 语法。参见,例如:
http://breakthebit.org/post/8453341914/ruby-1-9-and-the-new-hash-syntax
这两行生成的哈希是相同的。