Operador CortoCircuito JavaScript

Operador CortoCircuito JavaScript

En el camino del aprendizaje de cualquier lenguaje de programación te encuentras con ciertas cosas que para unos son obvias y para otros no tanto en este post voy a compartir ciertos tips interesantes que puede servir también en otros lenguajes.

Adicional te quiero recordar que los trucos son interesantes y divertidos pero de nada sirve si no se aplican.

Empezemos

Evaluación de corto-circuito

Este concepto se describe así mismo pero de que forma?, partiendo que en JavaScript y en los lenguajes de programación los operadores lógicos (&& || !) se evaluan de izquierda a derecha en el caso del OR ( || ) si el primer valor es verdadero se provoca un corto-circuito y ni si quiera evalua la segunda expresion. Observemos ejemplos

let a
let b = null;
let c = undefined;
let d = 4;
let e = 'five';

let f = a || b || c || d || e;

console.log(f);

Cual seria el resultado el valor de f?

Claro 4 porque es el primer valor que no es falso podría ser e = 'five' pero este valor no se alcanza a evaluar por el cortocircuito provocado

Otro ejemplo ya aplicado en algo muy común es en nodejs cuando se usa para conectarse a una base datos

Forma Larga

let dbHost;
if(process.env.DB_HOST){
  dbHost = process.env.DB_HOST;
} else {
 dbHost = 'localhost'
}

Este fragmento de código es para usar colocar el valor del host a usarse, y se resume de la siguiente forma: si existe usa una variable de entorno 'DB_HOST' caso contrario usa 'localhost' se entiende fácilmente pero ahora veamos la versión abreviada

Forma Corta

let dbHost = process.env.DB_HOST || 'localhost' ;