Operadores lógicos: || y &&

Ana Martínez Aguilar
2 min readApr 26, 2018

Los operadores lógicos se suelen utilizar con valores booleanos (valores que devuelven true o false). En el caso de que los valores no sean booleanos, los operadores AND y OR tenderán a convertirlos a booleanos para poder trabajar con ellos.

Operador OR

Cuando el operador || se usa con valores booleanos, devuelve true si cualquiera de las dos expresiones es verdadera. Si ninguna de las expresiones es verdadera, el operador devuelve false.

false || true
//devuelve true
true || true
//devuelve true
false || false
//devuelve false

Cuando los valores no son booleanos, el operador OR convierte el valor de su izquierda a booleano para decidir qué hacer y, en caso necesario, también el de la derecha. Así, en el caso de que el valor de la izquierda sea verdadero, lo devuelve. En caso contrario, devuelve el de la derecha.

Por ejemplo, un caso de uso sería si queremos usar una variable que está vacía en algunas ocasiones y en otras no, podemos usar el operador || para ofrecer una alternativa.

1 || 3//devuelve 1

Operador &&

Cuando se usa con valores booleanos, el operador AND devuelve true si ambas expresiones son verdaderas y devuelve false en caso contrario. El operador de la izquierda siempre es evaluado y el operador de la derecha solo es evaluado si el primer operador devuelve true.

true  && true
// devuelve true
true && false
// devuelve false

Cuando no se usa con valores booleanos, el operador AND convierte los valores a booleanos y su funcionamiento es el siguiente: cuando el valor de la izquierda se convierte a falso, devuelve ese valor y, en caso contrario, devuelve el de la derecha.

1 && 3
//devuelve 3

Si te interesa el tema, puedes investigar sobre Evaluación perezosa, un concepto muy relacionado con esto.

--

--