所以这在 Ruby 中是合法的:
puts key: "value"
{:key=>"value"}
但这不是:
hsh = key: "value"
puts hsh
sandbox.rb:1: syntax error, unexpected ':', expecting end-of-input
hsh = key: "value"
为什么不呢?我什么时候可以省略散列的大括号?
最佳答案
当散列是传递给函数的最后一个参数时,您可以省略大括号。因此,例如,您不需要将它们用于 Rails link_to
帮助程序中的选项,但在您的 hsh = key: "value"
示例中确实需要它们,因为有散列没有函数作为参数。
关于ruby - 什么时候可以省略 Ruby 哈希的大括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57223388/