Cómo usar la declaración switch y case de JavaScript

Estrada Web Group
Estrada Web Group
Cómo usar la declaración switch y case de JavaScript

Resumen: en este tutorial, aprenderás a usar la declaración switch y case de JavaScript para ejecutar un bloque de código basado en múltiples condiciones.

Introducción a la declaración switch case de JavaScript

La sentencia switch evalúa una expresión, compara su resultado con valores de cada caso (case) y ejecuta la sentencia asociada con el valor de case coincidente.

A continuación, se ilustra la sintaxis de la instrucción switch:

switch (expresión) {
    case value1:
        statement1;
        break;
    case value2:
        statement2;
        break;
    case value3:
        statement3;
        break;
    default:
        statement;
}

Cómo funciona.

  • Primero, evalúe la expresión dentro de los paréntesis después de la palabra clave switch.
  • En segundo lugar, compare el resultado de la expresión con el valor1, valor2, … en el case que se ramifique de arriba hacia abajo. La sentencia switch utiliza la comparación estricta (===).
  • Tercero, ejecute la declaración en la rama del case donde el resultado de la expresión es igual al valor que sigue a la palabra clave case. La sentencia break termina la ejecución de la sentencia switch. Si omites la declaración break, la ejecución del código pasa de la rama del case que coincide con la expresión a la siguiente. Si el resultado de la expresión no es estrictamente igual a no coincide con ningún valor, la declaración de switch ejecutará la declaración en la rama por default.

La declaración switch dejará de comparar el resultado de la expresión con los valores en cada case restantes siempre que encuentre una coincidencia.

La sentencia switch es como la sentencia if…else…if. Pero tiene una sintaxis más legible. En la práctica, a menudo se utiliza una sentencia switch para reemplazar una sentencia compleja if...else...if para hacer que el código sea más legible.

Técnicamente, la sentencia switch es equivalente a la siguiente sentencia if...else...if:

if (expression === value1) {
  statement1;
} else if (expression === value2) {
  statement2;
} else if (expression === value3) {
  statement3;
} else {
  statement;
}

Ejemplos de switch case de JavaScript

Tomemos algunos ejemplos del uso de la declaración de switch de JavaScript.

1) Usando la switch case de JavaScript para obtener el día de la semana

El siguiente ejemplo usa la instrucción switch para obtener el día de la semana en función de un número de día:

let day = 3;
let dayName;

switch (day) {
  case 1:
    dayName = 'Domingo';
    break;
  case 2:
    dayName = 'Lunes';
    break;
  case 3:
    dayName = 'Martes';
    break;
  case 4:
    dayName = 'Miércoles';
    break;
  case 5:
    dayName = 'Jueves';
    break;
  case 6:
    dayName = 'Viernes';
    break;
  case 7:
    dayName = 'Sábado';
    break;
  default:
    dayName = 'Día incorrecto';
}

console.log(dayName); // Martes

Resultado:

Martes

Cómo funciona.

Primero, declaras la variable del día que contiene el número de día y la variable de nombre de día (dayName).

En segundo lugar, obtiene el día de la semana en función del número de día mediante la instrucción switch. Si el día es 1, el día de la semana es el domingo. Si el día es 2, el día de la semana es lunes, y así sucesivamente.

Tercero, se envía el día de la semana a la consola.

2) Usar la declaración switch de JavaScript para obtener el recuento de días basado en un mes

El siguiente ejemplo usa la instrucción switch para obtener el conteo de días de un mes:

let year = 2022;
let month = 2;
let dayCount;

switch (month) {
  case 1:
  case 3:
  case 5:
  case 7:
  case 8:
  case 10:
  case 12:
    dayCount = 31;
    break;
  case 4:
  case 6:
  case 9:
  case 11:
    dayCount = 30;
    break;
  case 2:
    // leap year
    if ((year % 4 == 0 && !(year % 100 == 0)) || year % 400 == 0) {
      dayCount = 29;
    } else {
      dayCount = 28;
    }
    break;
  default:
    dayCount = -1; // invalid month
}

console.log(dayCount); // 29


En este ejemplo, tenemos cuatro casos:

  • Si el mes es 1, 3,5, 7, 8, 10 o 12, el número de días en un mes es 31.
  • Si el mes es 4, 6, 9 u 11, el número de días en ese mes es 30.
  • Si el mes es 2 y el año no es bisiesto, el número de días es 28. Si el año es bisiesto, el número de días es 29.
  • Si el mes no está en el rango válido (1-12), la rama por default se ejecuta y establece la variable dayCount en -1, lo que indica el mes no válido.

Resumen

  • La sentencia switch evalúa una expresión, compara su resultado con valores en cada case y ejecuta la sentencia asociada con el case coincidente.
  • Usa la instrucción switch en lugar de una instrucción compleja if...else...if para hacer que el código sea más legible.
  • La sentencia switch usa la comparación estricta (===) para comparar la expresión con los valores de case.

 

Compartir artículo:

Más artículos geniales

Cúal es el alcance o el ámbito de las variables en JavaScript

Cúal es el alcance o el ámbito de las variables en JavaScript

Resumen: en este tutorial, aprenderás sobre el alcance o el ámbito de las variables en JavaScript que determina la visibilidad y accesibilidad de las variables.

Ver artículo completo
Cómo usar los bucles en JavaScript con For, While o Do While

Cómo usar los bucles en JavaScript con For, While o Do While

En este artículo, explicare el uso básico de las estructuras de control para producir bucles o repeticiones. Los bucles pueden ejecutar bloques de código cualquier cantidad de veces que sea necesario.

Ver artículo completo
Introducción al manejo de objetos en JavaScript

Introducción al manejo de objetos en JavaScript

Resumen: en este tutorial, aprenderás sobres los objetos de JavaScript y cómo manipular las propiedades de los objetos de manera efectiva.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla