Contenido del curso

Fundamentos Javascript

Funciones, Scope y Estructuras de Datos

Operadores lógicos AND, OR y NOT en JS

Resumen

Los operadores lógicos en JavaScript te permiten combinar, negar o evaluar varias condiciones a la vez, y son la base para controlar el flujo de cualquier aplicación que construyas. Si estás aprendiendo a programar, dominarlos te abre la puerta a validaciones, permisos y árboles de decisión.

Aquí trabajamos con tres operadores: && (AND), || (OR) y ! (NOT). Cada uno tiene una lógica distinta, y entender cuándo usar cada uno marca la diferencia entre una app que se comporta como esperas y una llena de bugs raros.

¿Qué hace el operador AND en JavaScript?

El operador AND, representado con &&, devuelve true solo si ambas expresiones son verdaderas. Si una sola falla, el resultado completo es false.

Mira cómo se comporta en un archivo 07-logic.js:

javascript console.log(true && true); // true console.log(true && false); // false console.log(false && true); // false

Este operador brilla cuando necesitas que todas las condiciones se cumplan al mismo tiempo. Por ejemplo, imagina que validas si alguien puede ver la lista de usuarios en tu sistema:

javascript const esAdministrador = true; const esUsuarioActivo = true; console.log(esAdministrador && esUsuarioActivo); // true

Solo si la persona es administradora y además está activa, la dejas pasar al siguiente flujo. Si una de las dos falla, se queda fuera.

¿Cuándo usar AND en JavaScript? Úsalo cuando necesites que dos o más condiciones sean verdaderas al mismo tiempo, como validar permisos de administrador junto con un estado activo.

¿Cómo funciona el operador OR y cuándo conviene usarlo?

El operador OR se escribe con doble pipe || y devuelve true si al menos una de las expresiones es verdadera. Solo retorna false cuando todas son falsas.

javascript console.log(true || true); // true console.log(true || false); // true console.log(false || false); // false

Aquí hay que ir con cuidado, porque OR puede jugarte en contra si esperas un flujo más estricto. Como estos operadores controlan por dónde se mueve tu aplicación, una comparación mal hecha te lleva a comportamientos que no deseas.

Un caso típico: dejar pasar a un usuario si tiene al menos uno de varios permisos. No necesita todos, basta con uno. Ese es el escenario natural del OR.

¿Qué diferencia hay entre AND y OR en la práctica?

La distinción es directa:

  • AND (&&) exige que todas las condiciones sean verdaderas.
  • OR (||) se conforma con que una sola sea verdadera.
  • AND es más restrictivo, OR es más permisivo.

Cuando diseñes validaciones de permisos, piensa primero qué tan estricto quieres ser. Si el usuario debe ser administrador y activo, usa AND. Si basta con que sea administrador o moderador, usa OR.

¿Para qué sirve el operador NOT en JavaScript?

El operador NOT se escribe con el signo de admiración de cierre ! y su función es invertir el valor booleano. Lo que era true se vuelve false, y viceversa.

javascript console.log(!true); // false console.log(!false); // true

¿Dónde entra en juego? Cuando quieres negar una condición dentro de tu lógica. Por ejemplo: si no es administrador, haz esto; si es administrador, haz aquello. NOT te ayuda a expresar esa negación de forma limpia, sin tener que reescribir toda la condición.

¿Qué hace el operador ! en JavaScript? Invierte el valor booleano de una expresión. !true se convierte en false y !false en true, útil para validar negaciones.

¿Cómo aplicar operadores lógicos en el flujo de una aplicación?

Piensa en tu aplicación como un árbol de decisiones. Cada operador lógico es una bifurcación que lleva al usuario por un camino u otro: ver un panel, recibir un permiso, acceder a una sección.

Una recomendación práctica cuando estés diseñando esta lógica:

  1. Dibuja el flujo antes de escribir código, con cada condición como una rama.
  2. Identifica qué operador encaja en cada bifurcación: AND para condiciones obligatorias, OR para alternativas, NOT para negaciones.
  3. Prueba cada combinación con console.log para confirmar que el resultado coincide con lo que esperas.

Este hábito te evita horas de depuración después, porque visualizas las decisiones antes de programarlas. Y te prepara para proyectos más grandes, como un sistema de notas en Markdown donde la lógica de validación marca toda la experiencia.

¿Ya probaste combinar AND, OR y NOT en una misma expresión? Cuéntame en los comentarios qué reto resolviste con ellos.