Từ ReorderConstantExpression.java:
/**
* Reorder constant expression hoping for a better compression.
* ex. x === 0 -> 0 === x
* After reordering, expressions like 0 === x and 0 === y may have higher
* compression together than their original counterparts.
*
*/
Như đã trình bày bởi một google closure compiler contributor, nén mã ý kiến được đề cập đến nén gzip phương tiện, không phải là việc rút gọn thực tế "nén". Lý do nó có thể cải thiện nén gzip là nếu bạn có 0 === x
và x === 0
trong mã của mình, trình biên dịch đóng cửa chuẩn hóa cả hai loại này thành 0 === x
, văn bản trùng lặp và do đó nén tốt hơn.
Sau đó, cũng là:
typeof this.value == "object"
typeof this.key == "object"
Các chuỗi độc đáo là: typeof this.
, value
, key
và == "object"
Nhưng nếu bạn sắp xếp lại:
"object" == typeof this.value
"object" == typeof this.key
Các chuỗi độc đáo là: "object" == typeof this.
, value
và key
. Ít chuỗi duy nhất và một bản sao khá dài.
Google thích Yoda :) –
Có thể bạn nên hỏi rằng ở đây: https://groups.google.com/forum/?fromgroups#!forum/closure-compiler-discuss –
Nếu có bất kỳ lợi ích hiệu suất nào , nó là không đáng kể, ít nhất là trong Chrome: http://jsperf.com/yoda –