【发布时间】:2012-01-20 07:58:39
【问题描述】:
有人可以向我解释以下 Ruby 代码的含义吗? (我在一个人的项目中看到了这段代码sn-p):
car ||= (method_1 || method_2 || method_3 || method_4)
上面的代码和下面的代码有什么区别?
car = method_1 || method_2 || method_3 || method_4
---------更新-------------
好的,在阅读@Dave 的解释后,我明白了||= 运算符的含义,我的下一个问题 是method_2、method_3 和method_4 是否都返回一个值,哪个是值将分配给car? (我想car 最初是nil)
【问题讨论】:
-
关于您的编辑:
||和&&短路,在||的情况下,意味着一旦遇到真实的(不是nil或false)值,评估就会停止, 而&&一发现虚假值就停止。
标签: ruby