March 2020
Intermediate to advanced
376 pages
5h 9m
Japanese
TypeScriptの宣言は、型と値をモデル化するために必要な豊富な振る舞いのセットを備えており、JavaScriptと同様に、それらをさまざまな方法でオーバーロードすることができます。この付録では、それらの振る舞いのうちの2つを取り上げ、どの宣言が型(および値)を生成するか、どの宣言同士をマージできるかについて要約します。
TypeScriptの宣言の中には、型を作成するものもあれば、値を作成するものもあり、その両方を作成するものもあります。表C-1はそのクイックリファレンスです。
表C-1 その宣言は型を生成するか?
| キーワード | 型を生成するか? | 値を生成するか? |
|---|---|---|
class | はい | はい |
const, let, var | いいえ | はい |
enum | はい | はい |
function | いいえ | はい |
interface | はい | いいえ |
namespace | いいえ | はい |
type | はい | いいえ |
宣言のマージは、TypeScriptの核となる振る舞いです。それを利用して、より機能豊富なAPIを作成したり、コードをより適切にモジュール化したり、コードをより安全にしたりすることができます。
表C-2は、「10.4 宣言のマージ」から転載したものです。これは、TypeScriptがどの種類の宣言をマージするかについての便利なリファレンスです。
表C-2 その宣言はマージできるか?
| マージ先 | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| 値 | クラス | 列挙型 | 関数 | 型エイリアス | インターフェース | 名前空間 | モジュール | ||
| 値 | × | × | × | × | ○ | ○ | × | — | |
| クラス | — | × | × | × | × | ○ | ○ | — | |
| 列挙型 | — | — | ○ | × | × | × | ○ | — | |
| マージ元 | 関数 | — | — | — | × | ○ | ○ | ○ | — |
| 型エイリアス | — | — | — | — | × | × | ○ | — | |
| インターフェース | — | — |
Read now
Unlock full access