数日前にClosureCompilerが一見短縮できるように見える特定のコードを短縮しない理由について質問したことは認めますが、その理由はこの場合には当てはまらず、なぜ短縮されないのかよくわかりません。ここ。
私が持っているコードは次のとおりです。
var a = 0;
function b() {
return a++ >= 3;
}
現在、プリインクリメントとポストインクリメントがあります。違いは戻り値です-それをa++
返しa
、次にそれをインクリメントし、++a
最初にそれをインクリメントしてa
からそれを返します。
これは、私のコードを(空白の削除を無視して)次のように短縮できるということです。
var a = 0;
function b() {
return ++a > 3;
}
ただし、ClosureCompilerはこれを変更(または認識)していないようです。
++a >
したがって、私の質問は、代わりに使用した場合にどのような副作用が発生する可能性があるa++ >=
かということです。