TypeScript

TypeScriptとは

TypeScriptは、[[JavaScript]] に静的型付けを追加したプログラミング言語です。Microsoftが開発し、コンパイル(トランスパイル)すると素のJavaScriptになります。

interface User {
  id: number
  name: string
}

function greet(user: User): string {
  return `こんにちは、${user.name}さん`
}

初学者向けポイント

  • 「JavaScriptのスーパーセット」= 正しいJavaScriptはそのままTypeScriptとしても動く
  • 型があると実行前に間違いに気づける(user.nmae のようなタイポもエディタが即指摘)
  • エディタの補完・リファクタリング支援が劇的に強くなるのが実務での最大の恩恵

よく使う型機能

機能用途
インターフェースinterface User { ... }オブジェクトの形を定義
ユニオン型string | null「どちらか」を表す
ジェネリクスArray<T>型を引数のように扱う
型推論const n = 1 → number明示しなくても型が付く

実務での位置づけ

[[React]] や [[Node.js]] のプロジェクトでは TypeScript がほぼ標準になっています。ビルドには [[Vite]] などのツールが使われ、型チェックは tsc が担当する構成が一般的です。

関連技術とのつながり

  • [[JavaScript]] — コンパイル後の実体。言語仕様のベース
  • [[React]] — コンポーネントのpropsを型で守れる相性の良さ
  • [[Vite]] — TypeScriptをそのまま高速にビルドできる
  • [[自動テスト]] — 型チェックとテストを組み合わせて品質を守る
Q: 「TypeScriptはJavaScriptのスーパーセット」とはどういう意味?
- [x] 正しいJavaScriptはそのままTypeScriptとしても動く
- [ ] TypeScriptはJavaScriptより実行速度が速い
- [ ] JavaScriptの機能を一部削って軽量化している
解説: スーパーセットとは、正しいJavaScriptがそのままTypeScriptとしても動くという意味です。

Q: TypeScriptをコンパイル(トランスパイル)すると何になる?
- [ ] 機械語のバイナリ
- [x] 素のJavaScript
- [ ] WebAssembly
解説: TypeScriptはコンパイルすると素のJavaScriptになり、それが実行時の実体です。

Q: `string | null` のように「どちらか」を表す型機能はどれ?
- [ ] ジェネリクス
- [ ] 型推論
- [x] ユニオン型
- [ ] インターフェース
解説: ユニオン型は「どちらか」を表す型で、`string | null` のように書きます。