Sentencia Switch
Parte de la sección Fundamentos del Journey de JavaScript de Coddy — lección 27 de 77.
La sentencia switch es otra forma de controlar el flujo de tu programa basándose en diferentes condiciones. Es similar a usar if-else if-else, pero puede ser más conciso y legible en ciertas situaciones.
Así es como funciona la sentencia switch:
switch (expression) {
case value1:
// Código a ejecutar si expression coincide con value1
break;
case value2:
// Código a ejecutar si expression coincide con value2
break;
// ... más casos ...
default:
// Código a ejecutar si ningún caso coincide
}- La
expressionse evalúa una vez. - El valor de la expresión se compara con los valores de cada
case. - Si hay una coincidencia, se ejecuta el bloque de código asociado.
- La sentencia
breakse utiliza para salir de la sentenciaswitch. Sin ella, la ejecución continuaría al siguiente caso.
- El caso
defaultes opcional. Se ejecuta si ningún otro caso coincide.
Aquí tienes un ejemplo:
let day = 3;
let dayName;
switch (day) {
case 1:
dayName = "Sunday";
break;
case 2:
dayName = "Monday";
break;
case 3:
dayName = "Tuesday";
break;
// ... casos para otros días ...
default:
dayName = "Invalid day";
}
console.log(dayName); // Salida: TuesdayEn este ejemplo, la sentencia switch comprueba el valor de day. Como day es 3, se ejecuta el caso para 3, estableciendo dayName como "Tuesday".
Desafío
PrincipianteRecibirás un comando del usuario.
Usa una sentencia switch para establecer el valor de la variable message basándote en el comando.
Establece message a:
"System starting"→ si el comando es"start""System stopping"→ si el comando es"stop""System paused"→ si el comando es"pause""System resuming"→ si el comando es"resume"
Si el comando no coincide con ninguna opción conocida, establece:
"Unknown command"
Al final, el programa imprimirá el valor de message.
Tu tarea es establecer correctamente el valor de <strong>message</strong> usando una sentencia switch.
Hoja de referencia
La sentencia switch controla el flujo del programa basándose en diferentes condiciones, de manera similar a if-else if-else pero más concisa para ciertas situaciones.
Sintaxis básica:
switch (expression) {
case value1:
// Código a ejecutar si expression coincide con value1
break;
case value2:
// Código a ejecutar si expression coincide con value2
break;
default:
// Código a ejecutar si ningún caso coincide
}- La
expressionse evalúa una vez y se compara con cada valor decase - La sentencia
breaksale del switch; sin ella, la ejecución continúa en el siguiente caso - El caso
defaultes opcional y se ejecuta si ningún otro caso coincide
Ejemplo:
let day = 3;
let dayName;
switch (day) {
case 1:
dayName = "Sunday";
break;
case 2:
dayName = "Monday";
break;
case 3:
dayName = "Tuesday";
break;
default:
dayName = "Invalid day";
}
console.log(dayName); // Salida: TuesdayPruébalo tú mismo
// Obtener el comando del usuario
let command = inp;
// Crear una variable para almacenar el mensaje
let message;
switch (command) {
// Escribe tu código aquí
}
// Imprimir el mensaje
console.log(message);Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 3Coerción de tipos7Calculadora para dividir la cuenta
Mensaje de bienvenidaCálculo de la propina y el total10FizzBuzz con un giro
Descripción general del juegoLa función FizzBuzz13Rastreador de lista de compras
Descripción general del proyectoAñadir elemento2Variables
NúmerosStringBooleanConvenciones de nomenclaturaVariables vacíasResumen - Inicializar variablesConstantes5Toma de decisiones
Sentencia IfIf - ElseRepaso - Calculadora simpleIf - Else anidadosSentencia Switch3Operadores Parte 1
Operadores aritméticosOperador móduloAtajos aritméticosOperadores de comparaciónIgualdad estricta vs. débilResumen - Matemáticas simples6E/S Básica
SalidaSalida con variablesConversión de tipos - Parte 1Conversión de tipos - Parte 2Resumen - Hasta 120Resumen - Verdadero o Falso