Mientras estaba matando el tiempo buscando patrones de taquigrafía de Javascript, me encontré con una forma interesante de expresar una declaración if
here. Las siguientes obras:¿Usando '&&' como una abreviación de instrucción if?
var var1 = 5;
var var2 = 1;
var1 == 5 && var2++;
creo que es un (más limpio y más corto,) forma totalmente fresco de escribir una declaración if
que sólo tiene que hacer una operación. Sin embargo, me encontré con un problema con el siguiente código tan pronto como he intentado algo más con ella:
var var1 = 5;
var var2 = 1;
var1 == 5 && var2 = 2;
En lugar de trabajar como el primer fragmento de código, mi prueba arroja un error:
Uncaught ReferenceError: Invalid left-hand side in assignment
¿Por qué no funciona esto, y por qué el lado izquierdo de mi declaración es invocado como incorrecto en oposición a la mano derecha?
Esto no es "totalmente fresco (y más corto, más limpio)" manera de escribir un 'si '. No es más limpio, y es mucho más ilegible e imposible de mantener (en realidad lo has probado al hacer esta pregunta). –
Si sabe lo que esto significa, se ve más limpio (imho) y es más corto que escribir tres líneas. Todavía soy un novato, por eso tuve que hacer esta pregunta.Además, es totalmente genial, no puedes discutir eso. :) –
Como dije, no lo es. Puede escribir un 'si' en menos de tres líneas, y todavía es legible. Sin embargo, puedo decir que eres un novato, porque piensas que esto es mejor. :) La gente con experiencia sabría que el código fácil de leer y mantener es mejor que "genial, pero difícil de entender". –