TypeScript - Declaración de caso Switch ...

los switch declaración evalúa una expresión, hace coincidir el valor de la expresión con una cláusula de caso y ejecuta declaraciones asociadas con ese caso.

Sintaxis

switch(variable_expression) { 
   case constant_expr1: { 
      //statements; 
      break; 
   } 
   case constant_expr2: { 
      //statements; 
      break; 
   } 
   default: { 
      //statements; 
      break; 
   } 
}

El valor de variable_expression se prueba con todos los casos en el conmutador. Si la variable coincide con uno de los casos, se ejecuta el bloque de código correspondiente. Si ninguna expresión de caso coincide con el valor de variable_expression, se asocia el código dentro del bloque predeterminado.

Las siguientes reglas se aplican a una declaración de cambio:

  • Puede haber cualquier número de declaraciones de casos dentro de un conmutador.

  • Las declaraciones de casos solo pueden incluir constantes. No puede ser una variable o una expresión.

  • El tipo de datos de variable_expression y la expresión constante deben coincidir.

  • A menos que ponga un descanso después de cada bloque de código, la ejecución fluye hacia el siguiente bloque.

  • La expresión de caso debe ser única.

  • El bloque predeterminado es opcional.

Diagrama de flujo

Ejemplo: cambiar ... caso

var grade:string = "A"; 
switch(grade) { 
   case "A": { 
      console.log("Excellent"); 
      break; 
   } 
   case "B": { 
      console.log("Good"); 
      break; 
   } 
   case "C": {
      console.log("Fair"); 
      break;    
   } 
   case "D": { 
      console.log("Poor"); 
      break; 
   }  
   default: { 
      console.log("Invalid choice"); 
      break;              
   } 
}

El ejemplo verifica el valor de la variable grado con el conjunto de constantes (A, B, C, D y E) y ejecuta los bloques correspondientes. Si el valor de la variable no coincide con ninguna de las constantes mencionadas anteriormente, se ejecutará el bloque predeterminado.

Al compilar, generará el siguiente código JavaScript:

//Generated by typescript 1.8.10
var grade = "A";
switch (grade) {
   case "A": {
      console.log("Excellent");
      break;
   }
	
   case "B": {
      console.log("Good");
      break;
   }
	
   case "C": {
      console.log("Fair");
      break;
   }
	
   case "D": {
      console.log("Poor");
      break;
   }
	
   default: {
      console.log("Invalid choice");
      break;
   }
}

El código anterior producirá el siguiente resultado:

Excellent