Switch in TypeScript
Here’s the translated content in TypeScript, maintaining the original structure and explanations:
Switch statements express conditionals across many branches.
Here’s a basic switch
.
let i = 2;
console.log("Write ", i, " as ");
switch (i) {
case 1:
console.log("one");
break;
case 2:
console.log("two");
break;
case 3:
console.log("three");
break;
}
You can use commas to separate multiple expressions in the same case
statement. We use the optional default
case in this example as well.
const now = new Date();
switch (now.getDay()) {
case 6: // Saturday
case 0: // Sunday
console.log("It's the weekend");
break;
default:
console.log("It's a weekday");
}
switch
without an expression is an alternate way to express if/else logic. Here we also show how the case
expressions can be non-constants.
const t = new Date();
switch (true) {
case t.getHours() < 12:
console.log("It's before noon");
break;
default:
console.log("It's after noon");
}
A type switch
compares types instead of values. You can use this to discover the type of a variable. In this example, the variable t
will have the type corresponding to its clause.
function whatAmI(i: any) {
switch (typeof i) {
case "boolean":
console.log("I'm a bool");
break;
case "number":
console.log("I'm an int");
break;
default:
console.log(`Don't know type ${typeof i}`);
}
}
whatAmI(true);
whatAmI(1);
whatAmI("hey");
To run the program, put the code in a file and use ts-node
or compile it with tsc
and use node
to execute it.
$ ts-node example.ts
Write 2 as
two
It's a weekday
It's after noon
I'm a bool
I'm an int
Don't know type string