TypeScript 学習資料

Node+JavaScript / Java / C# のいずれかの経験がある方向け / 本編12章 + 付録4本

📅 作成: 2026-08-28 / 更新: 2026-08-29

JavaScript を書いたことがある方、または Java か C# を知っている方を対象にした TypeScript の学習資料です。プログラミングの基礎(変数・条件分岐・繰り返し・関数・クラス)は説明しません。

ゴールは型の付いた .ts を自分で書き、tsc が出すエラーを自力で読み解いて直せるようになることです。上から順に読んでも、必要な章だけ引いても使えます。

資料一覧

01〜12 は順に読む前提です。A1〜A4 は必要になったときに引くもので、順番に読む必要はありません。どこから手を付けるか迷ったら A1. 逆引き から入ってください。

1. この資料の約束事

バッジ

TypeScript は同じコードでも設定と実行環境で結果が変わります。差がある箇所だけ、その場でバッジを付けています。

バッジ意味
stricttsconfig.jsonstrict: true のときだけエラーになる、または挙動が変わる
ESMCJSモジュール形式によって書き方が変わる
Node型ストリップNode が .ts を直接実行する場合の制約
TS7TypeScript 7 と 5 系で挙動が違う箇所。移行時の注意点
(なし)どの環境でも同じ。大半の内容にはバッジが付きません

補足枠「Java・C# から来た人へ」

本文は JavaScript を知っている読者を基準に書いています。Java・C# の経験者がつまずきやすい箇所には、この見出しの枠を添えました。JavaScript 経験者は読み飛ばして構いません

補うのは静的型付け言語との差分だけです。

「変数とは」「クラスとは」といったプログラミングの基礎は扱いません。逆に、Java・C# の経験がかえって邪魔をする箇所(構造的型付け、型が実行時に消えること、ジェネリクスの扱い)には必ず枠を置いています。

コードの前提

項目前提
TypeScript5.x 以降。バージョン番号は、差が問題になる箇所にだけ書いています
Node.js26 系を対象にしています。.ts の直接実行(型ストリップ)が既定で有効なバージョンです
実行方法コード例は npx tsx ファイル名.ts でそのまま動きます
.ts の文字コードUTF-8(BOM なし)+ LF
エラーメッセージ既定の英語をそのまま載せ、日本語訳を添えています(訳は tsc --locale ja の出力に準拠)
動作確認環境Node.js 26.8.1 / npm 11.19.0 / TypeScript 7.0.2 と 5.9.3 の両方(エラーメッセージ・出力とも差はありませんでした)

2. 読み方

順に読む場合

範囲位置づけ
01 → 02 → 03順番必須。環境が整わないと以降のコードを動かせません
04・05核心。ここだけは飛ばさないでください
06 〜 0905 の内容に依存します。順に読むのが確実です
10・11独立性が高く、必要な順に読んで構いません
1209 まで終わっていれば着手できます

山場は 05 と 08 です。

05. 構造的型付けJava・C# 経験者が、08. 型の絞り込みJavaScript 経験者が最もつまずく箇所です。読者によって難所が違うため、どちらも時間を取って読んでください。

目的から引く場合

状況引く先
tsc のエラーの意味が分からないA1. 逆引き(エラー番号から)
こういうを書きたいA2. 型レシピ集
こういう処理を書きたいA3. 実務パターン集
ライブラリの型定義が読めないA4. 型レベルプログラミング
環境が動かない・import が解決できない03. tsconfig10. モジュールと宣言ファイル

3. 勉強会で使う場合

全5回・1回90分

範囲ねらい
第1回01〜03環境を動かす。全員が tsc の通る状態を作る
第2回04〜06型を書く。any に逃げない習慣をつける
第3回07〜08絞り込みと網羅性チェック
第4回09〜11ジェネリクスとモジュール
第5回12ハンズオン

参加前の準備

第1回の冒頭で環境構築に時間を使わないよう、次の3点を必ず済ませてから参加してください。

4. この資料について

作者

LightSpeedC https://lightspeedc.com

この資料の構成

対象読者の想定、章立ての意図、執筆の方針は ZZ. 資料の構成 にまとめています。