加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在ruby 2.2.0中创建哈希的新方法

发布时间:2020-12-16 22:53:07 所属栏目:百科 来源:网络整理
导读:在 ruby 2.2.0中你可以写这样的哈希: hash = { 'new_possible_style': :of_hashes }hash[:new_possible_style] #= :of_hasheshash['new_possible_style'] #= nil 我无法意识到实现这种风格的原因.如果我需要字符串作为键(例如,对于某些第三方库),我仍然需要
在 ruby 2.2.0中你可以写这样的哈希:
hash = { 'new_possible_style': :of_hashes }
hash[:new_possible_style]  #=> :of_hashes
hash['new_possible_style'] #=> nil

我无法意识到实现这种风格的原因.如果我需要字符串作为键(例如,对于某些第三方库),我仍然需要使用旧式哈希.这个“功能”的用例是什么?核心开发人员为什么要添加这种风格?

提前致谢.

解决方法

这不是一种新的哈希表示形式,而是以一致的方式在1.9中添加的现有样式的扩展.

在1.9中,你可以这样做

hash = { symbol_key: 'value' }

您还可以使用以下语法定义带有其他限制字符的符号:

sym = :'a-symbol-with-dashes'

但是在版本1.9到2.1中,代码

hash = { 'a-symbol-with-dashes': 'value' }

不被认为是有效语法,而是你得到异常语法错误:(irb):4:语法错误,意外’:’,期待=>

在散列语法中添加对符号引用包装的支持最有可能是一致性.使用短散列键语法编写符号文字时的选项现在与在散列外写入相同文字时的选项相同(除了放置冒号的位置之外)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读