Ruby 原来 { .. } 和 do .. end 是不一样的...

blacktulip · June 25, 2014 · Last by itomato replied at June 26, 2014 · 2885 hits

我一直以为是等价的,但其实不一样

这个括号坑在用 form helper 的时候遇到过 :)

#1 楼 @billy 麻烦详细说说具体情况是怎么回事吧,让看到的人不要再踩坑..

@blacktulip 我想你都说的很详细了。具体的例子我记得不是很清楚了,类似这个

= simple_form_for(User.new,\
  html: {class: "form-horizontal", id: "user_sign_in"},\
  validate: true) do |f|

不确定这段代码没有加括号会不会出问题,总之我在这里碰到过问题,所以后来所有的form_fordo之间都加上括号。

块是多行的时候我也用大括号,目前没遇到问题,以后注意

运算符优先级这种问题,不确定时多写个括号就好了。人生还有许多其他美好的事情。

优先级不同。。。推荐大家看这本书 http://www.manning.com/black3/

那当然,就和 and, && 的区别一样,都是为了省括号费尽心思

学习了。之前一直以为是等价的。

Programing Ruby 中重点介绍了的啊。。。

只是 parse 时不一样吧

记得第一次看 ruby 的书时,好像说是等价的,原来不是啊

ruby 这方面属于吃饱饭没事做。

我总是习惯加上括号,感觉清晰一些。毕竟程序是给人看的。

You need to Sign in before reply, if you don't have an account, please Sign up first.