Admito que hice una pregunta acerca de por qué Closure Compiler no acorta un código que parece acortable a primera vista hace unos días, pero ese motivo no es aplicable en este caso y no estoy muy seguro de por qué no lo es. t acortado aquí.Compilador de cierre: ¿puede a ++> = 3 convertirse en ++ a> 3?
¿Qué código tengo es:
var a = 0;
function b() {
return a++ >= 3;
}
Ahora no es pre-incremento y post-incremento. La diferencia es el valor de retorno - a++
vuelve a
y luego incrementos de TI, ++a
primeros incrementos a
y luego lo devuelve.
Lo que esto se reduce a es que mi código podría reducirse a (ignorando la eliminación espacios en blanco):
var a = 0;
function b() {
return ++a > 3;
}
Sin embargo, Closure Compiler no parece alterar (o reconocer) esto.
Mi pregunta por lo tanto es: ¿qué efectos secundarios podría tener ++a >
cuando se usa en lugar de a++ >=
?
¿Por qué querrías que hiciera eso? No veo cómo mejorará el rendimiento de ninguna manera. –
No por el rendimiento, sino por la longitud del código. Closure Compiler está ahí para acortar el código eliminando espacios en blanco y mucho más, por lo que 'a ++> = 3' podría acortarse a' ++ a> 3'. No es muy emocionante pero me preguntaba. – pimvdb
necesita cumplir 2 condiciones y la ganancia es muy pequeña, por lo que probablemente ni siquiera hayan perdido el tiempo o se hayan enfocado en cosas más importantes ... – fazo