微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

大括号:Ruby&Rails中的[Brackets],(圆括号)和{Curlies}

因此,Ruby有时候使用大括号而不是要求它们的宽松容忍度导致了很多混乱,因为我正在尝试学习Rails以及何时/何地使用它们以及为什么?

有时参数或值传递为(@ user,@ comment),有时它们似乎是[:user =>评论]和其他人只是:: action => ‘编辑’

我在谈论[] vs()vs {}的我们

规则是什么?你有什么技巧可以帮助你记住吗?

解决方法

圆括号()用于对逻辑或数学表达式进行分组,并将参数分组到函数调用,例如:
a = 2 * (3 + 4)
b = (x==y) || (m==n)
Hash.new.send('[]=',:a,:b)

Curly Braces {}用于散列文字和块,例如:

h = {1=>2,2=>3}
h.each {|k,v| puts k+v}

Square Brackets []用于数组文字,数组索引和切片,以及从散列中获取,例如:

arr = [1,2,3]
two = arr[1]
three = h[2]

为了混淆这个问题,散列文字也可以作为方法调用的参数就地使用,而不需要大括号或括号,只要它是最后一个参数(感谢samuil).此外,散列文字可以在方括号中就地使用,以创建包含散列的单项数组:

puts 1=>2,3=>4 #=> 1234
[5=>6,7=>8]    #=> [{5=>6,7=>8}]

如有疑问,请始终使用括号对项目进行分组,并将大括号括在大括号中.

原文地址:https://www.jb51.cc/ruby/271154.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐