用于传递哈希值的独特构造

2023-12-04

我从未见过这种用于构建哈希的结构。do_stuff(records: records)这仅适用于发送到方法的参数列表吗?它在任何地方都有记录吗?我知道它是 Ruby 1.9+。

records = { 
  'example.com' => '1.2.3.4',
  'hello.com' => '44.33.22.22',
}

def do_stuff(data = {} )
 puts data
end

do_stuff(records: records)

这里发生了两件事。这{ key: value }语法是 Ruby 1.9 中的新语法。它相当于{ :key => value }.

此外,Ruby 方法有一些语法糖,允许您传递哈希文本作为方法的最后一个参数,而不包含花括号。这是notRuby 1.9 中的新功能。所以

do_stuff(key: value)

相当于

do_stuff({ key: value })

只是提醒您,只有当哈希是该方法的最后一个参数时,这才有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于传递哈希值的独特构造 的相关文章

随机推荐