Ruby 2.2+ 中的冒号位置

colon placement in Ruby 2.2+

我看到冒号在 Ruby

中有两种不同的用法
:controller => 'pages'

然后

action: => 'home'

我在这里找到了解释:http://goo.gl/ZKxKVK 好像位置不重要,有人能澄清一下吗?

action: => 'home' 语法无效。

应该是action: 'home':action => 'home'

这些是等价的。他们产生:

{:action=>'home'}

大多数情况下没关系。由于 Ruby 1.9 我们可以使用更短的形式:

h = { a: 1, b: 2}

但有些情况下必须使用最长的形式,例如:

h = {1 => 'a', 2 => 'b'}
h = {"One Two" => 1}