Exemple:Pourquoi Closure Compiler favorise-t-il! 0 au lieu de vrai?
var formatDate = function(d) {
return dateFormat(d, "yyyy-mm-dd HH:MM:ss", true);
}
est compilé à:
var formatDate = function(a) {
return dateFormat(a, "yyyy-mm-dd HH:MM:ss", !0);
};
0 se sent comme une opération logique en place une primitive Javascript, qui semble intuitivement comme il devrait être plus cher. Ce n'est pas le cas? Pourquoi pas?
Parce qu'il est plus court de deux caractères. – Bergi
L'exécution dans ce cas peut traiter ce '! 0' comme étant exactement équivalent à' true'; en d'autres termes, il est très probable que cela ne fait aucune différence une fois que le code est réellement exécuté, et avant cela, il enregistre 2 caractères. – Pointy