Uso de && y || fuera de la cláusula if en JavaScript
Es posible que haya utilizado los operadores &&
y ||
al escribir una condición en una cláusula if
. Pero ¿sabía que, en JavaScript, se evalúan a los valores de la expresión, como cadenas y números, en lugar de los valores booleanos true
y false
?
Esto le permite utilizar los operadores &&
y ||
en expresiones fuera de la if
-cláusula. Proporciona formas cortas de expresar una parada anticipada utilizando &&
y de expresar un valor por defecto utilizando ||
.
La cláusula &&
opera sobre valores verdaderos y falsos
El hecho de que los operadores &&
y ||
se evalúen a cadenas y números no rompe la cláusula if
porque las condiciones se evalúan de forma diferente en JavaScript.
En lugar de que la cláusula if
decida su próximo movimiento basándose en que la condición sea true
o false
, decide basándose en que la condición sea verdadera o falsa.
La definición es
Un valor es falso si es
false
,null
,undefined
,''
,0
oNaN
. Un valor verdadero es cualquier valor que no se considere falso.
Pongamos en práctica esta información.
Use &¶ protegerse de los indefinidos
Una situación común es acceder a las propiedades de objetos anidados utilizando la notación de puntos. Por ejemplo request.session.id
. En este caso, si algún objeto a lo largo del camino es undefined
se produce un «Uncaught TypeError: Cannot read property of undefined» se lanza un error.
El error se puede evitar utilizando &&
para protegerse de los indefinidos.
Aquí la expresión evalúa a undefined
de forma segura sin lanzar un error.
La definición para &&
es
El operador
&&
evalúa a la expresión del lado izquierdo si es falsa, en caso contrario a la expresión del lado derecho.
Utilizar || para proporcionar un valor por defecto
Otro caso de uso común es recuperar un valor, y si no existe entonces utilizar un valor por defecto.
Esto se puede lograr utilizando ||
-operador.
La definición de ||
es
El operador
||
evalúa a la expresión de la izquierda si es verdadera, de lo contrario a la expresión de la derecha.
Lectura
Estas dos nuevas herramientas son buenas adiciones a su caja de herramientas. Pero como siempre, la legibilidad es lo primero. Utilízalas sabiamente, donde mejor encajen. Recuerda asegurarte de que todos los miembros de tu equipo saben cómo utilizarlas, por ejemplo, pasándoles este artículo.