【发布时间】:2013-07-28 18:36:45
【问题描述】:
我来自 Perl 背景并学习 Ruby。我对 Ruby 的哈希语法有点困惑。
我指的是http://www.ruby-doc.org/core-2.0/Hash.html上给出的例子
对于上面链接中提到的替代语法,我的 Ruby 会引发语法错误。
这段代码运行良好:
#!/usr/bin/ruby
options = { :font_size => 10, :font_family => "Arial" }
puts options[:font_size]
然而,此代码会引发语法错误:
#!/usr/bin/ruby
options = { font_size: 10, font_family: "Arial" }
puts options[:font_size]
错误是:
/home/workspace/ruby/so.rb:3: odd number list for Hash
options = { font_size: 10, font_family: "Arial" }
但是,上面粘贴的链接表明它应该可以工作。
你能指导我这里缺少什么吗?还是我忽略了一些明显的东西?
顺便说一句,这是我使用的 Ruby 版本:
# ruby --version
ruby 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
【问题讨论】:
-
该语法仅适用于 Ruby 1.9+。您使用的是 1.8。
-
@Blender,我猜到了,但没有 1.9 方便确认。谢谢,我会将我的 ruby 更新到 1.9。谢谢。
-
没有理由升级到 1.9。 2.0 与 1.9 反向兼容。如果要升级,请升级到 2.0。
标签: ruby