typeof - TypeScriptキーワード一覧
typeof は2つの用途で利用されます。
- typeof 演算子 - 式の値(評価された値)が属する型の種類を文字列で返す演算子として使用されるキーワード
- 型クエリー - 識別子が示す型をそのまま型として利用するキーワード
似たような役割で利用されますが、利用可能な範囲と結果がそれぞれことなるため、詳細は上記のそれぞれのページをご覧ください。
キーワード情報
- 「typeof」は識別子として予約されています。(ES2015の仕様で「予約語」(キーワード)に含まれ、ユーザー定義の識別子として利用できません。)
- 「識別子として」予約されているだけであるため、プロパティーキー名としては利用可能です。
- 「識別子として」予約されているため、ユーザー定義の型名としても利用できません。(TypeScriptの文法上、
type
およびinterface
などで定義する際に用いる名前(識別子)は BindingIdentifier (ES2015の文法を継承)であり、BindingIdentifier は「予約語」を禁止しているため。refs. TypeScript/spec.md 「A.1 Types」・「A.5 Interfaces」・「A.6 Classes」など, ES2015 - 12.1 Identifiers)