TypeScriptはJavaScriptに型を追加することで、コードの品質向上やエラーの事前防止を可能にする強力なツールです。複数の型を指定することは、柔軟性と安全性の両方を兼ね備えたコードを記述する上で重要です。以下は、TypeScriptで複数の型を指定する方法についての解説です。
1. ユニオン型(Union Types)
ユニオン型は、複数の型の中からいずれか一つの型を持つことを示します。以下はその基本的な構文です。
let variable: Type1 | Type2;
例えば、文字列または数値を受け入れる変数を定義する場合は次のようにします。
let myVariable: string | number;
myVariable = "Hello, TypeScript!";
myVariable = 42;
2. インターセクション型(Intersection Types)
インターセクション型は、複数の型を組み合わせて一つの型を作成します。以下はその例です。
type Type1 = { prop1: string };
type Type2 = { prop2: number };
let variable: Type1 & Type2;
この場合、variable
はType1
とType2
の両方のプロパティを持つ必要があります。
let myVariable: Type1 & Type2;
myVariable = { prop1: "TypeScript", prop2: 42 };
3. ジェネリクス(Generics)
ジェネリクスを使用することで、関数やクラスが異なる型と共に動作できるようになります。
function identity<T>(arg: T): T {
return arg;
}
let resultString: string = identity("Hello");
let resultNumber: number = identity(42);
ジェネリクスを利用することで、柔軟で再利用可能なコードを実現できます。
これらの型指定の方法を組み合わせることで、より複雑なデータ構造や関数の型を表現することが可能です。柔軟性を保ちながらも型安全性を確保することで、信頼性の高いTypeScriptコードを構築することができます。