在哪个版本的ruby出现':'而不是'=>'?

时间:2014-10-02 19:17:40

标签: ruby

我的意思是

some: true

VS

:some => true

我的Rails版本和Ruby版本的兼容性问题,我必须知道哪个版本只显示:而不是=>

我不知道如何通过Google找到这种信息。

1 个答案:

答案 0 :(得分:4)

这是引入Ruby 1.9的一个特性:

{ example: 'key' }
# => { :example => 'key' }

这类似于JavaScript和其他语言定义字典类型结构的方式。以这种方式生成的密钥始终是符号类型。

也可以混合搭配:

variable = :foo
{ example: 'key', 'string' => 'stored', variable => 'thing' }
# => {:example=>"key", "string"=>"stored", :foo=>"thing"}

这是一件好事,因为x:方法更有限。例如,如果您想要按键中的点,则需要使用较旧的样式。