🔷 TypeScriptチートシート

構文用途
string / number / boolean基本型let name: string = "太郎";
type型エイリアスtype ID = string | number;
interfaceオブジェクトの型定義interface User { name: string; age: number; }
?オプショナルプロパティinterface User { email?: string; }
readonly読み取り専用readonly id: number;
union (|)複数の型のいずれかlet value: string | number;
intersection (&)型の合成type Admin = User & Permissions;
literal type特定の値のみ許可type Dir = "up" | "down" | "left" | "right";
generics 汎用的な型パラメータfunction first(arr: T[]): T { return arr[0]; }
as型アサーションconst el = document.getElementById("x") as HTMLInputElement;
typeof値から型を取得type Config = typeof defaultConfig;
keyofオブジェクトのキーの型type Keys = keyof User; // "name" | "age"
enum列挙型enum Color { Red, Green, Blue }
tuple固定長配列let pair: [string, number] = ["age", 25];
never到達しない型function error(msg: string): never { throw new Error(msg); }
unknown安全なanylet data: unknown; // 使う前に型チェック必須
Partial全プロパティをオプショナルにPartial // { name?: string; age?: number; }
Required全プロパティを必須にRequired
Pick特定のプロパティだけ抽出Pick // { name: string; }
Omit特定のプロパティを除外Omit // { name: string; }
Recordキーと値の型を指定した辞書Record // { [key: string]: number }
type guard型の絞り込みif (typeof x === "string") { x.toUpperCase(); }
satisfies型チェックしつつ推論を保持const config = { port: 3000 } satisfies Config;
infer条件型で型を推論type Return = T extends (...args: any) => infer R ? R : never;
declare型だけ宣言(実装なし)declare module "*.css";

📖 関連する用語

❓ よくある質問

TypeScriptチートシートはどんな人向け?

TypeScript初心者〜中級者向け。基本の型からユーティリティ型まで網羅しています。

印刷して使える?

はい。印刷に最適化されたレイアウトで出力されます。

JavaScriptとの違いは?

TypeScriptはJavaScriptに型を追加した言語です。このチートシートはTS固有の構文をまとめています。

⚠️ よくあるエラー

  • Object is possibly undefined — null チェック不足
  • Property does not exist on type — 存在しないプロパティ

🔷 TypeScriptを学ぼう!

JavaScriptの基礎を学んだら、TypeScriptで型安全な開発を始めましょう。

JavaScriptコースを始める →