ウェブサービスを作っています。

and/or 演算子の優先順位は三項演算子より低い

a and b == c ? d : e

は、

a and (b == c ? d : e)

と等価なんですね。

(a and b == c) ? d : e

と等価にしたかったら、

a && b == c ? d : e

ってしないとなんですね。


覚えたこと
and/or 演算子の優先順位は三項演算子より低くて、&&/|| 演算子の優先順位は三項演算子より高い。


参考
Ruby Reference Manual - るりま