以下多行条件语句返回意外结果. if (false andfalse andfalsetrue) puts 123end# = 123 注意缺失的情况.想知道为什么ruby解释器没有检测到条件中的语法问题. 那里没有语法错误. 换行符开始一个新表
if (false and false and false true) puts 123 end # => 123
注意缺失的情况.想知道为什么ruby解释器没有检测到条件中的语法问题.
那里没有语法错误.换行符开始一个新表达式,与分号(;)完全相同.
(false and false and false; true) # => true
此运算符类似于C和C中的comma operator.
a binary operator that evaluates its first operand and discards the result, and then evaluates the second operand and returns this value
……和do
-form in Clojure类似:
Evaluates the expressions in order and returns the value of the last.