Lección 15: Condicionales if / else if / else
🧠 Concepto
Section titled “🧠 Concepto”Las estructuras condicionales permiten que tu programa tome decisiones basadas en condiciones. El bloque if es la forma más básica y fundamental de control de flujo.
if básico
Section titled “if básico”if (condicion) { // código que se ejecuta si la condición es true}if…else
Section titled “if…else”if (condicion) { // código si la condición es true} else { // código si la condición es false}if…else if…else
Section titled “if…else if…else”if (condicion1) { // código si condicion1 es true} else if (condicion2) { // código si condicion2 es true} else { // código si ninguna condición es true}Buenas prácticas
Section titled “Buenas prácticas”- Siempre usa llaves {} aunque el bloque sea de una línea. Evita errores y mejora legibilidad.
// ✅ Bienif (edad >= 18) { console.log('Mayor de edad');}
// ❌ Mal (propenso a errores)if (edad >= 18) console.log('Mayor de edad'); console.log('Siempre se ejecuta'); // ¡Esto NO está dentro del if!-
Evita anidación profunda. Si tienes 3 o más niveles de
ifanidados, probablemente hay una forma más limpia. -
Evalúa primero las condiciones más específicas.
💻 Ejemplo
Section titled “💻 Ejemplo”let edad = 20;let tieneIdentificacion = true;
// Condicional básicoif (edad >= 18) { console.log('Eres mayor de edad');} else { console.log('Eres menor de edad');}
// Múltiples condicioneslet nota = 85;
if (nota >= 90) { console.log('Calificación: Excelente');} else if (nota >= 70) { console.log('Calificación: Aprobatoria');} else if (nota >= 50) { console.log('Calificación: Reprobatoria');} else { console.log('Calificación: Deficiente');}
// Combinando con operadores lógicoslet hora = 14;
if (hora >= 6 && hora < 12) { console.log('Buenos días');} else if (hora >= 12 && hora < 18) { console.log('Buenas tardes');} else { console.log('Buenas noches');}📝 Ejercicio
Section titled “📝 Ejercicio”- Crea un archivo
condicionales-if.js. - Escribe un programa que pida (simule) la edad de una persona y muestre:
- Si es menor de 12 años: “Eres un niño”
- Si tiene entre 12 y 17: “Eres adolescente”
- Si tiene entre 18 y 59: “Eres adulto”
- Si tiene 60 o más: “Eres adulto mayor”
- Añade una segunda condición: si la persona es adulta y tiene licencia de conducir, muestra “Puedes conducir”.
let edad = 25;let tieneLicencia = true;
if (edad < 12) { console.log('Eres un niño');} else if (edad >= 12 && edad <= 17) { console.log('Eres adolescente');} else if (edad >= 18 && edad <= 59) { console.log('Eres adulto'); if (tieneLicencia) { console.log('Además, puedes conducir'); }} else { console.log('Eres adulto mayor');}⚠️ Nota
Section titled “⚠️ Nota”El orden de las condiciones importa. JavaScript evalúa de arriba a abajo y se detiene en la primera condición que sea true. Por eso es importante poner condiciones más específicas primero.
let x = 5;if (x > 0) { console.log('Positivo'); // ← esto se ejecuta} else if (x > 3) { console.log('Mayor que 3'); // ← esto nunca se ejecuta aunque sea más específico}Puedes asignar el resultado de un if a una variable. Aunque el ternario (próxima lección) es más elegante para esto, con if tradicional también funciona:
let mensaje;if (edad >= 18) { mensaje = 'Mayor de edad';} else { mensaje = 'Menor de edad';}console.log(mensaje);