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 o NaN. Un valor verdadero es cualquier valor que no se considere falso.

Pongamos en práctica esta información.

Use &&para 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.

1
const sessionId = request.session && request.session.id;

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.

1
const name = user.name || 'Guest';

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.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.