Lección 13 de 13 · Lectura y práctica
Operadores logicos
Operadores logicos Los operadores logicos te permiten combinar condiciones. AND (&&) Devuelve true solo si ambas condiciones son true. const edad = 25; const tieneLicencia = true; // Ambas deben ser true if (edad >= 18 &&.
Del concepto a la práctica
Taller de esta lección
Los operadores lógicos combinan condiciones, pero también devuelven valores cuando se usan fuera de un if. Para permitir una tarea solo cuando tiene título y duración válida, && exige ambas condiciones. Para mostrar un responsable alternativo, ?? conserva valores como cadena vacía si esa cadena tiene un significado distinto de “ausente”.
Ejemplo resuelto
const titulo = "Plan";
const minutos = 15;
const valido = titulo.trim() !== "" && minutos > 0;
const responsable = null;
console.log(valido, responsable ?? "Sin asignar");
// true "Sin asignar"Pruébalo
Cambia el título por tres espacios.
Cambia los minutos por 0 y después por -2.
Cambia
responsablepor"".Compara el resultado de
??con||.
Error frecuente: usar || como valor alternativo cuando el cero o la cadena vacía son datos válidos. Corrige usando ?? cuando solo quieras reemplazar null o undefined.
Comprueba tu resultado
El título con espacios debe producir false; 0 y -2 también deben impedir la validez. Con responsable = "", ?? debe conservar la cadena vacía, mientras || escogería "Sin asignar".

Mapa de prácticaUna condición decide qué camino ejecuta el programa. Un bucle repite una operación mientras queden elementos, y termina cuando la lista se agota. Separar ambas ideas ayuda a seguir el flujo y comprobar casos límite.
Ver la infografía en tamaño completo ↗Operadores logicos
Los operadores logicos te permiten combinar condiciones.
AND (&&)
Devuelve true solo si ambas condiciones son true.
const edad = 25;
const tieneLicencia = true;
// Ambas deben ser true
if (edad >= 18 && tieneLicencia) {
console.log("Puede conducir");
}
// Tabla de verdad
console.log(true && true); // true
console.log(true && false); // false
console.log(false && true); // false
console.log(false && false); // false
OR (||)
Devuelve true si al menos una condicion es true.
const esAdmin = false;
const esModerador = true;
// Solo una necesita ser true
if (esAdmin || esModerador) {
console.log("Tiene permisos especiales");
}
// Tabla de verdad
console.log(true || true); // true
console.log(true || false); // true
console.log(false || true); // true
console.log(false || false); // false
NOT (!)
Invierte el valor booleano.
const estaActivo = true;
console.log(!estaActivo); // false
console.log(!false); // true
// Doble negacion para convertir a boolean
console.log(!!"hola"); // true
console.log(!!0); // false
Nullish Coalescing (??)
Devuelve el lado derecho si el izquierdo es null o undefined.
const nombre = null;
const nombrePorDefecto = nombre ?? "Anonimo";
console.log(nombrePorDefecto); // "Anonimo"
// Diferencia con ||
const cantidad = 0;
console.log(cantidad || 10); // 10 (0 es falsy)
console.log(cantidad ?? 10); // 0 (0 no es null/undefined)
Optional Chaining (?.)
const usuario = {
nombre: "Maria",
direccion: null
};
// Sin optional chaining - error!
// console.log(usuario.direccion.calle);
// Con optional chaining - undefined
console.log(usuario.direccion?.calle); // undefined
console.log(usuario.perfil?.foto); // undefinedSigue con JavaScript Fundamentals
Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.
Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.