En este breve artículo, le presentaré los casos de cambio de JavaScript y cómo usarlos con ejemplos prácticos.
Este artículo lo explicará mejor con ejemplos más prácticos para ayudarlo a comprender los casos de interruptores en profundidad.
Prerrequisitos.
- Conocimientos básicos de JavaScript
- Editor de código
- Navegador web
- Tu cerebro :)
Una switch
declaración básicamente puede reemplazar múltiples if
comprobaciones en JavaScript.
Ofrece una forma más descriptiva de comparar un valor con múltiples variantes.
La sintaxis de Switch
La switch
placa presenta uno o más case
bloques y un caso por defecto opcional.
switch(x) { case 'value1': // if (x === 'value1') //code here [break] case 'value2': // if (x === 'value2') //code here [break] default: //code here [break] }
- Se
x
verifica que el valor de sea estrictamente igual al valor del primerocase
(es decir,value1
) luego al segundo (value2
) y así sucesivamente. - Si se encuentra la igualdad,
switch
comienza a ejecutar el código comenzando por el correspondientecase
, hasta el más cercanobreak
(o hasta el final deswitch
). - Si ningún caso coincide,
default
se ejecuta el código (si existe).
Algunos ejemplos reales
- Interruptor simple de reproducción y pausa
La switch
declaración se puede utilizar para varias ramas en función de un número o cadena:
switch (movie) { case 'play': playMovie(); break; case 'pause': pauseMovie(); break; default: doNothing(); }
Si no agrega una break
declaración, la ejecución "caerá" al siguiente nivel. Es esencial que etiquetes deliberadamente la caída con un comentario si realmente lo pretendías para ayudar a la depuración:
switch (movie) { case 'play': // fallthrough case 'pause': pauseMovie(); break; default: doNothing(); }
La cláusula predeterminada es opcional. Puede tener expresiones tanto en la parte del interruptor como en los casos si lo desea; las comparaciones se realizan entre los dos utilizando el ===
operador:
switch (3 + 7) { case 5 + 5: correct(); break; default: neverhappens(); }
- Interruptor de cálculo matemático simple
let average = 2 + 6; switch (average) { case 4: alert( 'Too small' ); break; case 8: alert( 'Exactly!' ); break; case 10: alert( 'Too large' ); break; default: alert( "Incorrect values!" ); }
Aquí se switch
empieza a comparar average
desde la primera case
variante que es 4
. El partido falla.
Entonces 8
. Eso es una coincidencia, por lo que la ejecución comienza case 8
hasta el más cercano break
.
Si no hay break
, la ejecución continúa con la siguiente case
sin ningún control.
Aquí hay un ejemplo sin break
:
let average = 2 + 6; switch (average) { case 4: alert( 'Too small' ); case 8: alert( 'Exactly!' ); case 10: alert( 'Too big' ); default: alert( "Incorrect values!" ); }
En el ejemplo anterior, veremos la ejecución secuencial de tres alerts
:
alert( 'Exactly!' ); alert( 'Too big' ); alert( "Incorrect values!" );
- caso de cambio de método getDay ()
El getDay()
método devuelve el día de la semana como un número entre 0 y 6.
Este ejemplo utiliza el número del día de la semana para calcular el nombre del día de la semana:
switch (new Date().getDay()) { case 0: day = "Sunday"; break; case 1: day = "Monday"; break; case 2: day = "Tuesday"; break; case 3: day = "Wednesday"; break; case 4: day = "Thursday"; break; case 5: day = "Friday"; break; case 6: day = "Saturday"; }
El resultado del día será el día de la semana actual en formato de día
PD: Esto cambiaría según el momento en que estés leyendo este artículo.
Escribí este artículo el 13/06/2019 que es un jueves, por lo que el resultado sería:
Thursday
La palabra clave predeterminada
La palabra clave predeterminada especifica el código que se ejecutará si no hay coincidencia de casos, más como una declaración else:
switch (new Date().getDay()) { case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; break; default: text = "Its not weekend yet!"; }
El resultado del texto será:
Its not weekend yet!
El caso predeterminado no tiene que ser el último caso en un bloque de interruptores:
switch (new Date().getDay()) { default: text = "Its not weekend yet!"; break; case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; }
Si el caso predeterminado no es el último en el bloque de interruptores, recuerde terminar el caso predeterminado con un descanso.
Conclusión
Hay tantos ejemplos prácticos de casos de interruptores que puede dirigirse a google.com y realizar una búsqueda rápida de más ejemplos de casos de interruptores.
Si este artículo te ayudó, muéstralo compartiéndolo.
¡Gracias por leer!