Hace mucho tiempo, había algo llamado lógica de escalera en un dispositivo informático remoto. La lógica de escalera funcionó como programación de sí o no, proporcionando una forma sencilla de manejar tareas simples. Este tipo de comportamiento lógico todavía se usa ampliamente en la actualidad, aunque se ha movido entre bastidores y es menos práctico. A menudo hay una aplicación más visible de este tipo de lógica, y probablemente siempre habrá una necesidad. JavaScript proporciona esta necesidad con una instrucción Switch que admite verdadero/falso y/o lógica.
En esta publicación, explicaremos la instrucción JavaScript Switch y cómo usarla en el desarrollo de su software. Aprenderá a comprender la sintaxis, cómo comportarse y algunas advertencias. Finalmente, verá algunos ejemplos de código y explicaciones de los usos reales de la sentencia switch en varias aplicaciones.
Empecemos.
¿Qué es una declaración de cambio?
Las declaraciones de cambio son una excelente manera de manejar el código que puede tener muchas posibilidades lógicas. Un ejemplo sería la comprobación de errores y, en caso de que se produzca un error, podría ser uno de muchos tipos diferentes. Las declaraciones de cambio le permiten elegir entre dos o más resultados posibles, cada uno con un resultado diferente.
La declaración de cambio le brinda más control sobre los resultados de la tarea, como la entrada del usuario, el manejo de errores, las respuestas a las solicitudes y más. Ahora que comprende lo que hace la declaración de cambio, echemos un vistazo a la sintaxis para comprender cómo funcionan.
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
break;
}
El cambio de declaración puede parecer confuso al principio, pero es muy simple y puede que solo te sea útil en ciencias. La declaración de cambio comienza con la palabra clave seguida de la expresión condicional que se probará. Hay muchos en una declaración de cambio > casos, cada caso contiene la palabra clave return o break y un caso predeterminado opcional.
> Cuando la expresión se evalúa para cada caso en la declaración de cambio, el resultado es verdadero o falso para cada caso configurado. Si todos los casos son falsos, el caso predeterminado se utiliza como respaldo.
Declaración de alternancia de JavaScript
Veamos un ejemplo de prueba de un valor de cadena para una coincidencia y analicemos el comportamiento con más detalle. En este ejemplo, asumimos un potencial de tres valores proporcionados por la entrada del usuario.
var title = "Dalek";switch (title) {
case "The Doctor":
console.log(`Hello! It's nice to meet you, you can call me ${title}`);
break;
case "Dalek":
console.log(`I am a ${title}! Exterminate!`);
break;
case "Cyberman":
console.log(`We are the ${title}, you will be upgraded!`);
break;
default:
console.log("Earth is defended!");
break;
}
La declaración de cambio anterior acepta una sola expresión, en este ejemplo una cadena, que se prueba en cada caso. Si el resultado de la prueba es verdadero, la declaración de cambio ejecutará el código apropiado. En este ejemplo, la prueba devuelve verdadero para Dalek y devuelve la siguiente cadena.
«¡Soy un Dalek! Destruir»
Después de ejecutar el código, la palabra clave break sale de la instrucción switch. El uso de una instrucción break o return evitará que su código continúe.
Caso de cambio de JavaScript
Ahora bien, existen algunas advertencias sobre el comportamiento de los casos de cambio, y conocerlas le ayudará a evitar resultados engañosos. Si omite una instrucción break o return, también se ejecutará cualquier caso después de que el caso haya pasado.
Veamos cómo se ve en el siguiente código.
var title = "Dalek";switch (title) {
case "The Doctor":
console.log(`Hello! It's nice to meet you, you can call me ${title}`);
case "Dalek":
console.log(`I am a ${title}! Exterminate!`);
case "Cyberman":
console.log(`We are the ${title}, you will be upgraded!`);
default:
console.log("Earth is defended!");
}
La línea anterior hará que la segunda (segundo caso), la tercera (tercer caso) y la cuarta cadena (predeterminada) se registren en la consola. Este comportamiento es por diseño, ya que puede ofrecer más flexibilidad al usar la instrucción switch para ciertas tareas.
La siguiente imagen muestra este comportamiento.
JavaScript alternar interrupción y retorno
Por ejemplo, si tiene una prueba que puede pasar varias pruebas, como obtener suficientes puntos para ganar un juego. Cuando un jugador gana, puedes notificarle los puntos obtenidos y el hecho de que está ganando.
Veamos un ejemplo usando el código de esta publicación hasta ahora.
switch (title) {
case "Dalek":
case "Cybermen":
console.log(`The ${title}, are here! Run!`);
break;
case "The Doctor":
console.log(`Hello! It's nice to meet you, you can call me ${title}`);
break;
default:
console.log("Earth is defended!");
break;
}
En este ejemplo, si se pasa «Dalek» o «Cybermen», el resultado será el mismo para ambas condiciones. Esta sintaxis nos permite incluir determinados comportamientos y respuestas por grupo o categoría. La siguiente imagen muestra el flujo de instrucciones de varios casos.
Finalmente, para evitar problemas de alcance, JavaScript proporciona una forma de proporcionar más control. La declaración de cambio tiene su propio alcance de bloque, por lo que necesitará una forma de agregar un alcance. Crear un caso con contenido encerrado entre llaves creará un rango único que le dará un control más dinámico.
Veamos cómo se vería en el siguiente código.
case "The Doctor": {
let title = "The Doctor";
console.log(`Hello! It's nice to meet you, you can call me ${title}`);
break;
}
Esta sintaxis le permite crear una variable de título única basada en el caso coincidente, lo que permite un control más dinámico.
Ejemplos de sentencias Switch JavaScript
Ahora que comprende el comportamiento de las declaraciones de cambio y sus diversas sintaxis, veamos un ejemplo de la sintaxis completa.
switch(title) {
case 1:
//code block
case 2: {
// code block
break;
}
case 3:
case 4: {
// code block
break;
}
default:
// code block
break;
}
Mire el siguiente video para ver algunos ejemplos de cómo funciona la instrucción switch.
La advertencia a tener en cuenta es que, aunque se permiten declaraciones de retorno en las declaraciones de cambio, existen limitaciones. Las declaraciones de cambio solo pueden contener declaraciones de devolución si están en un objeto que acepta la devolución de llamada.
Este comportamiento se debe a que la declaración de devolución no puede devolver información al ámbito global. Las declaraciones de retorno deben estar en un objeto que encapsule la declaración de cambio.
Primeros pasos con Switch JavaScript
Comenzar con la declaración de cambio de JavaScript es un proceso sencillo. Comprender a dónde ir a continuación también es un desafío, y saber cuándo y dónde usarlo requiere práctica. Además, conocer las mejores formas de maximizar una declaración de cambio al saber cómo configurarlo también es diferente.
La mejor manera de fortalecer su comprensión es practicar y repetir con diferentes estructuras. Resolver varios problemas lo ayudará a determinar los tiempos y formas más eficientes de usar la instrucción switch.