在Ruby 1.9中有一个使用句子“:foo =>'bar'”或“foo:'bar'”的约定?

时间:2013-01-16 23:11:33

标签: ruby coding-style

是否有在Ruby 1.9+中使用=>:的约定?像:

:param => "foo"

param: "foo"

编辑:感谢您的反馈,我编辑了这个问题以使其更加清晰。

2 个答案:

答案 0 :(得分:8)

有区别;较新的“JSON”样式的哈希创建只能与符号键一起使用。演示如下。

{ param: "foo" }

相当于

{ :param => "foo" }

所以你不能用它来创建这个哈希:

{ "foo" => "bar" }

或者这个:

{ 0 => "One" }

这很有意义,因为最好在可以的时候使用符号键。

编辑: 同样在您的示例中,{ param => "foo" }将变量param的值用作键。

所以

param = :foo
{ param => "bar" }

相当于

{ :foo => "bar" }

答案 1 :(得分:0)

我在codeschool.com的一个教程中听说它完全一样。 params:它和params =>一样直观,但你可以保存三个字符......(=>和一个字符之间有两个空格)