对不起,如果这是一个愚蠢的问题,但我是一个C#家伙摸索着ruby的方式..
在ruby中我注意到很多人这样做:
do_something(with params) if 1 = 1
这和之间有什么区别(甚至是轻微的):
if 1 = 1 do_something(with params)
还是为了更清晰而写的是同一件事?
解决方法
这是语法糖……允许我们以更容易阅读的方式编写代码.
http://rubylearning.com/satishtalim/ruby_syntactic_sugar.html
注意:对于@Phrogz,以下内容不一样!
请确保您没有尝试为变量赋值而不是将变量与值进行比较!另外,正如Phrogz所提到的,变量赋值的顺序有很大的不同……请参阅@Phrogz回答mor的详细信息!
if 1 = 1 then do_something(with params) end if 1 == 1 then do_something(with params) end