TypeScript で大文字と小文字を切り替える
-
TypeScript の
Switch Case
式 - TypeScript の複数の型
-
TypeScript の
Switch Cases
でEnums
を使用する -
TypeScript のさまざまな式で
Switch Case
を使用する
Switch case
は、さまざまなアプリケーション ロジックに基づいてコード ブロックのさまざまな部分を切り替えるために使用される重要なプログラミング構造です。 さまざまなプログラミング言語には、switch case
式の独自の実装があります。
TypeScript は、式が任意の型を持つ スイッチ ケース
もサポートしています。 C++ のような言語では、switch
式は必ず整数型で、いずれかのケースに一致する必要があります。
TypeScript の Switch Case
式
Switch
ケースは、式に基づいてコード ブロック間を移動する場合に重要です。 複数のif-else
ブロックの複雑さを回避するために使用できます。
以下は、TypeScript の基本的な switch case
式の構成を示しています。
switch ( expression ){
case val1:
...
break;
case val2:
...
break;
case val3:
...
break;
default:
...
break;
}
したがって、式はいずれかのケースと一致し、次のコード ブロックが実行されます。 一致するものが見つからない場合、default
ブロックに対応するコード ブロックが実行されます。
多くのプログラミング言語とは異なり、switch
句の式は、TypeScript では任意の型を持つことができます。
TypeScript の複数の型
TypeScript では、switch
ステートメントはアプリケーションに応じて複数の型を持つことができます。 次のコード ブロックは、TypeScript で switch
ステートメントを実行する方法を示しています。
function getStatus(status : string) {
switch ( status ) {
case "SUCCESS":
console.log("Operation successful");
break;
case "IN-PROGRESS":
console.log("Processing ...");
break;
case "FAILURE":
console.log("Operation failed");
break;
default:
console.log("Could not get status");
break;
}
}
getStatus("SUCCESS");
出力:
"Operation successful"
したがって、上記のコード ブロックでは、文字列を使用して switch
ステートメントのさまざまなケースを比較しています。
TypeScript の Switch Cases
で Enums
を使用する
TypeScript でスイッチ ケース
を使用する場合、列挙型
が広く使用されます。 以下は、TypeScript の switch-case ステートメントで enums を使用する方法を示しています。
enum Status {
SUCCESS,
IN_PROGRESS,
FAILURE
}
function getStatus(status : Status) {
switch ( status ) {
case Status.SUCCESS:
console.log("Operation successful");
break;
case Status.IN_PROGRESS:
console.log("Processing ...");
break;
case Status.FAILURE:
console.log("Operation failed");
break;
default:
console.log("Could not get status");
break;
}
}
getStatus(Status.FAILURE);
出力:
"Operation failed"
TypeScript のさまざまな式で Switch Case
を使用する
通常の型以外に、switch
ステートメントは 2つ以上の変数と一致させることもできます。 簡単な方法は、2つの文字列間で文字列連結を行い、case
ステートメント内の 2つの文字列を一致させることです。
function getDirection(dir1 : string, dir2 : string) {
var direction : string = dir1 + ' ' + dir2;
switch ( direction ) {
case 'N W':
console.log('North-West');
break;
case 'N E':
console.log('North-East');
break;
case 'S W':
console.log('South-West');
break;
case 'S E':
console.log('South-East');
break;
default:
console.log("Default direction");
break;
}
}
getDirection('S', "E");
出力:
"South-East"