7

a = a || bには、a = a && b良い構文シュガーがあります。また、頻繁に表示されるものは次のとおりです。a ||= ba &&= b

a = b || a
a = b && a

これを書くための良い構文シュガーまたは簡単な方法はありますか?

4

2 に答える 2

5
a = b || a

次のように書き換えることができます。

a = b if b

aまたはbの繰り返しなしで書き換えることができる

x = b and a = x

abが両方とも 6 文字より長い場合、x = b and a = xが最短の形式です。

于 2012-11-28T11:47:25.133 に答える
2

現在、そのようなショートカットはありません。

&&= と ||= は、CRuby/MRI AST のNODE_OP_ASGN_ANDNODE_OP_ASGN_ORです。「右辺値」は、左辺値が false または nil の場合にのみ評価されます。

于 2012-11-28T11:24:59.370 に答える