TypeScriptとは

TypeScriptはMicrosoftが開発したJavaScriptのスーパーセット(上位互換)です。静的型付けシステムを追加することで、コンパイル時に型エラーを検出し、大規模なアプリケーションの保守性を高めます。

JavaScriptとTypeScriptの比較

// JavaScript(型なし)
function greet(name) {
  return "Hello, " + name.toUpperCase();
}
greet(123); // ランタイムエラー(検出が遅い)

// TypeScript(型あり)
function greet(name: string): string {
  return "Hello, " + name.toUpperCase();
}
greet(123); // コンパイルエラー(事前検出)

TypeScriptの主要な型機能

機能 説明
基本型 string / number / boolean / null / undefined
Union型 string \| number(複数の型を受け付ける)
Generics Array<T>(型パラメータで汎用化)
Interface/Type オブジェクトの形を定義
Utility Types Partial / Required / Readonly / Pick 等

実務で頻繁に使うパターン

// APIレスポンスの型定義
interface User {
  id: number;
  name: string;
  email: string;
  role: "admin" | "user";
}

// Optionalなフィールドの扱い
type CreateUserInput = Omit<User, "id"> & { password: string };

// 型ガード
function isUser(obj: unknown): obj is User {
  return typeof obj === "object" && obj !== null && "id" in obj;
}

TypeScript導入のメリット

  • IDEサポートの向上:自動補完・定義ジャンプ・リファクタリングが精度向上
  • バグの早期発見:本番前にコンパイルエラーで型不一致を検出
  • チーム開発の品質安定:コードの「意図」が型で明示されドキュメント代わりになる

React・Vue・Next.jsなどのモダンフロントエンドでは事実上の標準言語です。