TypeScriptの基本型について、実際のコード例を交えながら詳しく解説していきます。型安全なプログラミングを実現するためには、これらの基本型の特性をしっかりと理解することが重要です。

string型

文字列を表す型です。シングルクォート(')、ダブルクォート(")、バッククォート(`)で囲んで表現します。

let message: string = "Hello, TypeScript";
let name: string = 'John';
let template: string = `My name is ${name}`; // テンプレートリテラル

number型

数値を表す型です。整数、浮動小数点数、2進数、8進数、16進数などを扱えます。

let decimal: number = 10;
let float: number = 3.14;
let binary: number = 0b1010;
let octal: number = 0o744;
let hex: number = 0xf00d;

boolean型

真偽値を表す型です。`true`または`false`のみを取ります。

let isDone: boolean = false;
let isActive: boolean = true;

null型

値が存在しないことを明示的に示す型です。

let nullValue: null = null;

undefined型

値が未定義であることを示す型です。

let undefinedValue: undefined = undefined;

symbol型

一意で不変な値を表す型です。ES2015以降で使用可能です。

let sym1: symbol = Symbol();
let sym2: symbol = Symbol("key");

bigint型

任意精度の整数を表す型です。ES2020以降で使用可能です。

let bigIntValue: bigint = 9007199254740991n;

型の使い分けのポイント

1. 文字列データは必ず`string`型を使用

2. 計算が必要な数値は`number`型

3. 大きな整数を扱う場合は`bigint`型

4. フラグや条件分岐には`boolean`型

5. 意図的に値が存在しないことを示す場合は`null`型

6. 初期化前の変数には`undefined`型

7. ユニークな識別子が必要な場合は`symbol`型

型安全性を高めるためのベストプラクティス

// 型推論を活用する
let inferredString = "Hello"; // string型と推論される

// union型での使用例
let nullableString: string | null = null;
let optionalNumber: number | undefined;

// リテラル型との組み合わせ
let status: "active" | "inactive" = "active";

これらの基本型を適切に使用することで、型安全なコードを書くことができ、開発時のエラーを早期に発見することが可能になります。また、コードの可読性も向上し、メンテナンス性の高いアプリケーションを開発できます。

TypeScriptの型システムの理解を深めることで、より堅牢なアプリケーション開発が可能になります。基本型の特性をしっかりと把握し、適切な場面で使用することを心がけましょう。