3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

TypeScript 1行でわかるチートシート[随時更新中!]

3
Last updated at Posted at 2026-09-07

💬 この記事でわかること

  • TypeScriptの基本用語をほぼ1行でざっくり理解できる
  • 随時更新中!

💻 自己紹介

  • フロントエンドエンジニア1年目
  • 以前の環境:ウォーターフォールでコーダーとしてwebサイト制作
  • 現在の使用技術:Vue.js

はじめに

TypeScript勉強中にメモしたものを、自分がパッと見て思い出せるレベルまで噛み砕いてまとめたメモです。

新しく知った用語が出てきたら随時更新していく予定なので、あくまで自分がわかる程度のフランクな感じで書いてます。同じように勉強中の方の参考に少しでもなれば嬉しいです!


基本の型

用語 一言でいうと こんな時に使おう
string 文字列(テキスト)のこと "hello" 名前とかメッセージとか、文字を扱うとき
number 数字のこと 123 年齢や金額など数値を扱うとき
boolean trueかfalseのどっちか true 「〜かどうか」を表したいとき
null 「何もない」を表す値 null 意図的に「空っぽ」を入れたいとき
undefined 値がまだ代入されていない/存在しないことを表す値 undefined 変数を宣言しただけでまだ何も代入してないとき
object プリミティブ型(文字列や数値など)以外のすべての値を表す型 { name: "taro", age: 20 } オブジェクト形式のデータを扱いたいとき
プロパティ オブジェクトの中の1項目(key: valueのセット) name: "taro" オブジェクトの中身を1個ずつ指すとき
メソッド オブジェクトの中にある関数 user.getName() オブジェクトに紐づく処理を実行したいとき
関数 処理をひとまとめにしたもの function add(a, b) { return a + b; } 同じ処理を何度も使い回したいとき

型まわりの便利機能

用語 一言でいうと こんな時に使おう
「どんな値が入るか」のルール string, number など 変数に想定外の値が入らないようにしたいとき
型注釈 「この変数はこの型ですよ」と自分で宣言すること let age: number = 20; TypeScriptに型を明示的に教えたいとき
型推論 TypeScriptが型を自動で考えてくれるすごいやつ let age = 20; (自動でnumberになる) わざわざ型注釈を書かなくても済むとき
type 型に好きな名前をつけられる type ID = string | number; 複雑な型に名前をつけて使い回したいとき
interface オブジェクト用の設計図。同じ名前で書くと自動的に定義をマージできる interface User { name: string; } オブジェクトの形を決めておきたいとき
ジェネリクス 型を後から決められる仕組み function first<T>(arr: T[]): T { return arr[0]; } いろんな型に対応する共通処理を書きたいとき
Array<T> T型の配列 Array<string> (=string[]) 同じ型の値をたくさん入れたいとき
ReadonlyArray<T> 変更しちゃダメな(読み取り専用の)配列 const arr: ReadonlyArray<number> = [1,2,3]; 配列をうっかり書き換えられたくないとき
keyof オブジェクトのキーだけを型として取り出せる keyof User"name" | "age" プロパティ名だけを型として使いたいとき
リテラル コードに直接書いた値そのもの "admin", 123
リテラル型 特定の値しか入れられない型 type Role = "admin" | "user"; 決まった値しか許可したくないとき
オプショナルプロパティ あってもなくてもいいプロパティ age?: number; 必須じゃないデータを表したいとき
オプショナルチェーン(?.) 値がなくてもエラーにせずundefinedを返す安全なやつ user?.name オブジェクトがnullかもしれないときの安全なアクセス
Null合体演算子(??) 値がnullundefinedのときだけ代わりの値を使う(0""はそのまま採用される点が||と違う) const name = user.name ?? "名無し"; デフォルト値を設定したいとき
スプレッド構文(...) 配列やオブジェクトの中身を展開する const newArr = [...arr, 4]; 配列やオブジェクトをコピー・結合したいとき
ユニオン型(|) 「AまたはB」のように複数の型を許可する(OR) type ID = string | number; 複数の型のどれかを受け入れたいとき
Mapped Types(マップド型) 既存の型のキーを1個ずつ取り出して、新しい型を作る機能 type Partial<T> = { [K in keyof T]?: T[K] }; 既存の型を少し加工した新しい型を作りたいとき
[K in T] Tに含まれるキーを1つずつ取り出して、まとめて新しい型を作る構文 { [K in "a"|"b"]: number } Mapped Typesを書くとき
インデックスアクセス型 オブジェクトの特定プロパティの「型」を取り出す機能(値じゃなくて型を取る) type Age = User["age"]; 既存の型の一部だけ再利用したいとき

配列・タプル

用語 一言でいうと こんな時に使おう
タプル 個数と順番、そして型まで決まっている配列 type Point = [number, number]; 「x座標とy座標」みたいに決まった形のデータを扱うとき
length 配列やタプルの要素数を教えてくれるやつ type B = ["a","b","c"];
type Length = B["length"];
// Length は 3
タプルの要素数を型として取り出したいとき
for-of文 配列の中身(値)を1個ずつ取り出してループする for (const item of arr) { console.log(item); } 配列の要素を順番に処理したいとき
entries() インデックス番号と値をセットで取り出す for (const [i, v] of arr.entries()) {} 何番目の要素かも一緒に知りたいとき

クラスまわり

用語 一言でいうと こんな時に使おう
クラス オブジェクトの設計図 class User { name: string; } 同じ形のオブジェクトをたくさん作りたいとき
インスタンス クラスをもとにして作った実体(クローン) const u = new User(); クラスから実際にオブジェクトを作るとき
コンストラクタ 「この初期設定持っててね」を決める場所 constructor(name: string) { this.name = name; } インスタンス作成時に初期値を渡したいとき
new インスタンス生成の合図 new User("taro") クラスからインスタンスを作るとき
abstract 抽象クラス。これ単体ではインスタンス(クローン)を作れない abstract class Animal {} 継承前提の共通の設計図を作りたいとき
readonly修飾子 一度セットしたら変更しちゃダメなやつ(読むだけならOK) readonly id: number; 書き換えられたくないプロパティを守りたいとき

制御・エラー処理

用語 一言でいうと こんな時に使おう
throw構文 処理をそこで止めて、エラーを投げる throw new Error("something wrong"); 想定外の状況が起きたことを伝えたいとき
try...catch 例外が発生したら、その値をcatchで受け取る仕組み。 try { throw new Error("エラー"); } catch (e) { console.log("受け取った!"); } エラーで処理全体が落ちるのを防ぎたいとき
void 関数は終わるけど何も値を返さない function log(): void { console.log("hi"); } 戻り値を使わない関数を作るとき
never 「絶対に起こらない値」を表す型。無限ループする関数や、必ずエラーを投げて終わる関数の戻り値になる function fail(): never { throw new Error(); } switch文などで全パターン網羅できてるかチェックしたいとき
instanceof 型ガード!値が指定したコンストラクタのインスタンスかどうかを実行時に判断する if (button instanceof HTMLButtonElement) {} 値の実際の型によって処理を分けたいとき
in 型ガード!このオブジェクトはこのプロパティを持っているか判定する if ("disabled" in button) {} プロパティの有無で処理を分けたいとき

その他知識

用語 一言でいうと こんな時に使おう
tsconfig.json TypeScriptのルールブック { "compilerOptions": {...} } プロジェクト全体のTypeScriptの挙動を設定したいとき
strict: true tsconfig.jsonに書く設定。「厳しくチェックしてね」の意味 "compilerOptions": { "strict": true } 型のゆるさを許さず、バグを未然に防ぎたいとき

📣 最後に

もし間違いに気づいた方がいたら、コメントで教えてもらえると嬉しいです🙏
引き続きTypeScript、頑張って勉強していきます!

🏢 所属会社

日々、Web開発をしながら学んだことを発信しています。
会社サイトはこちら👇
https://onewedge.co.jp/

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?