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` のように書きます。