2017-08-28 5 views
0

私はたいていのminificationライブラリで興味深いことに気付きました。あなたはtypeof value値は、ソースコード上の比較の左側にある見ることができるようにMinificationは、比較の左側に静的変数をもたらします。

これはangular.js

function isNumber(value) {return typeof value === 'number';} 

からの方法です。しかし、それは細化の後、これのように見えます。

function Q(a){return"number"===typeof a} 

ここで、staticメンバーはangular.min.jsミニコードの比較の左側にあります。

evaluated value === staticのすべてのケースはstatic === evaluated valueに変換されます。

私はちょうどそれの理由を知りたいです。信頼性や性能などの点でより優れていますか?

答えて

2

ちょっと短いです。彼らは元の順序でそれを残している場合、それはreturnの後にスペースが必要になります

function Q(a){return typeof a==="number"} 

しかしnumber周りの引用は、トークン区切り文字なので、何のスペースは必要ありません。上記の行は、縮小版より1文字長いです。

+0

時には、[Yoda](https://en.wikipedia.org/wiki/Yoda_conditions)short is ... – Cerbrus

1

javascriptエンジンでは、return文の後にスペースを入れずに文字列を続けることができるため、そしてそれは単にスペースを節約します。

関連する問題