Explica este código JavaScript
Dificultad: Básico
const q = 1;
switch (q) {
case '1':
answer = "one";
case 1:
answer = 1;
case 2:
answer = "this is the one";
break;
default:
answer = "not working";
}
console.log(answer);
- A.
"1"
- B.
1
- C.
this is the one
- D.
not working
Respuesta en el primer comentario.
Top comments (3)
Respuesta:
this is the one
Repasemos lo que pasa en este ejemplo paso por paso:
En el primer
case
comparamos el los valores"1"
y1
, el switch evalua las condiciones con una evaluacion estricta de triple igual===
, entonces por mas que los valores sean los mismos, los tipos de datos no lo son, entonces no se entra en estecase
.En el segundo
case
si que concuerdan el valor y el tipo de dato, por lo que temosanswer = 1
, pero el gran detalle es que estecase
carece de la sentenciabreak
, entonces el programa se seguirá ejecutando y pasara el siguientecase
.En el tercer
case
actualizamos el valor de la variable aanswer = "this is the one"
y ahora si con elbreak
cortamos la ejecución del programa. En conclusión, mostramos por consolathis is the one
.Es importante recordar la importancia de la sentencia
break
cuando usamosswitch
para evaluar condiciones en JavaScript y también tener en cuanta que unswitch
evalúa las condiciones de manera estricta.y por eso utilizamos Typescript niños...
supongo que la declaracion de answer está mas arriba que estas lineas?