Curso javascript nivel medio
En JavaScript, la estructura switch se utiliza para ejecutar diferentes bloques de código basados en el valor de una expresión. Es útil cuando tienes múltiples condiciones que deseas evaluar, ya que puede ser más legible y organizado que usar múltiples if...else if.
¿Cómo funciona switch?
El switch evalúa una expresión una vez y luego compara su valor con los valores de los diferentes casos (case). Cuando encuentra un case que coincide, ejecuta el código asociado a ese case. Si no hay coincidencias, puede ejecutar un bloque default.
Sintaxis básica:
1switch (expresión) { 2 case valor1: 3 // Código a ejecutar si la expresión === valor1 4 break; 5 case valor2: 6 // Código a ejecutar si la expresión === valor2 7 break; 8 // Puedes tener tantos casos como necesites 9 default: 10 // Código a ejecutar si no hay coincidencias 11}
expresión: Es el valor que se evalúa una vez al comienzo delswitch.case valor: Es cada posible valor que la expresión puede tomar.break: Detiene la ejecución delswitchdespués de que se ejecuta un bloquecase. Si se omite, el siguiente bloquecasetambién se ejecutará (esto se llama "fall through").default: Opcional. Se ejecuta si ninguno de los casos coincide con la expresión.
Ejemplo básico
Supongamos que queremos mostrar un mensaje basado en el día de la semana:
1let dia = "martes"; 2 3switch (dia) { 4 case "lunes": 5 console.log("Hoy es lunes"); 6 break; 7 case "martes": 8 console.log("Hoy es martes"); 9 break; 10 case "miércoles": 11 console.log("Hoy es miércoles"); 12 break; 13 default: 14 console.log("Día no reconocido"); 15}Salida de Consola!: Hoy es martes
En este ejemplo:
- La variable
diacontiene"martes". - El
switchevalúa la expresióndiay la compara con cadacase. - Cuando encuentra
case "martes", se ejecuta el bloque de código correspondiente y muestra "Hoy es martes". - El
breakdetiene la ejecución para evitar que otros casos se ejecuten. - Si
diano coincide con ningúncase, se ejecuta el bloquedefault.
Importancia del break
El break es crucial para evitar que el código "caiga" en los siguientes casos, lo que puede llevar a resultados inesperados.
Ejemplo sin break:
1let dia = "martes"; 2 3switch (dia) { 4 case "lunes": 5 console.log("Hoy es lunes"); 6 case "martes": 7 console.log("Hoy es martes"); 8 case "miércoles": 9 console.log("Hoy es miércoles"); 10 default: 11 console.log("Día no reconocido"); 12}Salida de Consola!: Hoy es martes Hoy es miércoles Día no reconocido
- En este ejemplo, sin
break, elswitchimprime todos los mensajes a partir de "Hoy es martes", lo cual generalmente no es lo que se desea.
Ejemplo con default
El default es útil cuando deseas manejar cualquier caso que no esté explícitamente cubierto por los case.
1let dia = "sábado"; 2 3switch (dia) { 4 case "lunes": 5 console.log("Hoy es lunes"); 6 break; 7 case "martes": 8 console.log("Hoy es martes"); 9 break; 10 case "miércoles": 11 console.log("Hoy es miércoles"); 12 break; 13 default: 14 console.log("Día no reconocido"); // Muestra "Día no reconocido" 15}Salida de Consola!: Día no reconocido
debes tener cuidado al usar 'switch' ya que puede llevar a crear código sucio y difícil de mantener.
Resumen
switches una estructura que se utiliza para comparar una expresión contra múltiples valores y ejecutar el código correspondiente.- Cada
caserepresenta un valor posible de la expresión. breakse utiliza para salir delswitchdespués de que se ejecuta uncase.defaultmaneja cualquier caso que no coincida con los valores especificados.
El switch es especialmente útil cuando tienes una variable que puede tomar muchos valores diferentes y deseas ejecutar diferentes bloques de código en función de esos valores.
- Loading...
Objetivo:
Crea una función llamada
calificarque acepte un número (entero) como parámetro (la calificación de un examen) y use la estructuraswitchpara devolver:- "Excelente" si la calificación es 9 o 10.
- "Bueno" si la calificación es 7 u 8.
- "Suficiente" si la calificación es 5 o 6.
- "Insuficiente" si la calificación es menor que 5.
Instrucciones:
- Usa la estructura
switchpara evaluar la calificación y devolver la respuesta adecuada.
Loading...