JavaScript no solo calcula, también toma decisiones. Los operadores lógicos te permiten combinar condiciones y decirle al programa: “si esto Y esto son verdaderos, haz esto”. Son la base de la lógica de programación.
Estos operadores trabajan con valores booleanos (true o false) y devuelven también un booleano.
AND (Y)Devuelve true solo si ambas condiciones son verdaderas.
const esMayor = true;
const tienePermiso = true;
const puedeEntrar = esMayor && tienePermiso; // true
const noPuedeEntrar = esMayor && false; // false
OR (O)Devuelve true si al menos una condición es verdadera.
const tieneEntrada = false;
const esInvitado = true;
const puedeEntrar = tieneEntrada || esInvitado; // true
const noPuedeEntrar = false || false; // false
NOT (NO)Invierte el valor booleano: true → false, false → true.
const estaLloviendo = true;
const noLlueve = !estaLloviendo; // false
const esDia = false;
const esNoche = !esDia; // true
Puedes combinarlos para crear condiciones más complejas. ¡Usa paréntesis para claridad!
const edad = 25;
const tieneCarnet = true;
const tieneDinero = false;
const puedeConducir = (edad >= 18) && tieneCarnet; // true
const puedeSalir = (edad >= 18) && (tieneDinero || tieneCarnet); // true
const noPuedeSalir = !(tieneDinero || tieneCarnet); // false
¡Importante! JavaScript evalúa de izquierda a derecha, y usa “cortocircuito”:
AND (&&): Si la primera es false, no evalúa la segunda.OR (||): Si la primera es true, no evalúa la segunda.Los operadores lógicos suelen usarse con operadores de comparación:
5 == "5" → true
5 === "5" → false
5 != "5" → false
5 !== "5" → true
let a = true, let b = false, let c = true.a && b, a || b, !a, !(a && c).edad = 20 y tieneCarnet = true. Usa && para verificar si puede conducir.|| para verificar si puede salir (tiene dinero O tiene permiso).=== para comparar 5 con "5" y 5 con 5. ¿Qué pasa?