De TypeScript switch-instructie voert één instructie uit meerdere voorwaarden uit. Het evalueert een expressie op basis van de waarde ervan, die Boolean, number, byte, short, int, long, enum type, string, etc. kan zijn. Een switch-instructie heeft één codeblok dat overeenkomt met elke waarde. Wanneer de match is gevonden, wordt het bijbehorende blok uitgevoerd. Een switch-instructie werkt als de if-else-if-ladderinstructie.
Bij een switch-instructie moeten de volgende punten worden onthouden:
- Er kunnen N aantal gevallen in een switch-instructie voorkomen.
- De case-waarden moeten uniek zijn.
- De case-waarden moeten constant zijn.
- Elke case-instructie heeft een break-instructie aan het einde van de code. De break-instructie is optioneel.
- De switch-instructie heeft een standaardblok dat aan het einde wordt geschreven. De standaardinstructie is optioneel.
Syntaxis
switch(expression){ case expression1: //code to be executed; break; //optional case expression2: //code to be executed; break; //optional ........ default: //when no case is matched, this block will be executed; break; //optional }
De switch-instructie bevat de volgende dingen. Er kunnen een willekeurig aantal gevallen binnen een switch-instructie voorkomen.
Geval: De naamval moet worden gevolgd door slechts één constante en vervolgens een puntkomma. Het kan geen andere variabele of expressie accepteren.
Pauze: De break moet aan het einde van het blok worden geschreven om uit de switch-instructie te komen na het uitvoeren van een case-blok. Als we geen break schrijven, gaat de uitvoering verder met de overeenkomende waarde voor het volgende case-blok.
Standaard: Het standaardblok moet aan het einde van de switch-instructie worden geschreven. Het wordt uitgevoerd als er geen case wordt gematcht.
Voorbeeld
let a = 3; let b = 2; switch (a+b){ case 1: { console.log('a+b is 1.'); break; } case 2: { console.log('a+b is 5.'); break; } case 3: { console.log('a+b is 6.'); break; } default: { console.log('a+b is 5.'); break; } }
Uitgang:
Schakelkast met String
let grade: string = 'A'; switch (grade) { case'A+': console.log('Marks >= 90'+' '+'Excellent'); break; case'A': console.log('Marks [ >= 80 and = 70 and = 60 and <70 ]'+' '+'average'); break; case'c': console.log('marks < 60'+' '+'below average'); default: console.log('invalid grade.'); } pre> <p>In this example, we have a string variable grade. The switch statement evaluates grade variable value and match with case clauses and then execute its associated statements.</p> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/typescript-tutorial/79/typescript-switch-statement-3.webp" alt="TypeScript Switch Statement"> <hr> <h2>Switch Case with Enum</h2> <p>In TypeScript, we can use the switch case with Enum in the following ways.</p> <h3>Example</h3> <pre> enum Direction { East, West, North, South }; var dir: Direction = Direction.North; function getDirection() { switch (dir) { case Direction.North: console.log('You are in North Direction'); break; case Direction.East: console.log('You are in East Direction'); break; case Direction.South: console.log('You are in South Direction'); break; case Direction.West: console.log('You are in West Direction'); break; } } getDirection(); </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/typescript-tutorial/79/typescript-switch-statement-4.webp" alt="TypeScript Switch Statement"> <hr> <h2>TypeScript Switch Statement is fall-through.</h2> <p>The TypeScript switch statement is fall-through. It means if a break statement is not present, then it executes all statements after the first match case.</p> <h3>Example</h3> <pre> let number = 20; switch(number) { //switch cases without break statements case 10: console.log('10'); case 20: console.log('20'); case 30: console.log('30'); default: console.log('Not in 10, 20 or 30'); } </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/typescript-tutorial/79/typescript-switch-statement-5.webp" alt="TypeScript Switch Statement"></70>
Uitgang:
TypeScript Switch-instructie is een mislukking.
De TypeScript-switch-instructie is een fall-through. Dit betekent dat als er geen break-instructie aanwezig is, alle instructies na de eerste matchcase worden uitgevoerd.
Voorbeeld
let number = 20; switch(number) { //switch cases without break statements case 10: console.log('10'); case 20: console.log('20'); case 30: console.log('30'); default: console.log('Not in 10, 20 or 30'); }
Uitgang:
70>