問題一覧に戻る
中級高度な型
問題36: Record'<'K, T'>'

Record'<'K, T'>'ユーティリティ型を使って、キーと値の型を指定してオブジェクト型を作成する方法を学びます。辞書型やマップ型のデータ構造を型安全に定義できます。

// Record型の基本使用
type UserRoles = <string, boolean>;

const permissions: UserRoles = {
admin: true,
editor: false,
viewer: true
};

// Union型をキーにしたRecord
type HttpStatusMessages = <200 | 404 | 500, string>;

const statusMessages: HttpStatusMessages = {
200: "OK",
404: "Not Found",
500: "Internal Server Error"
};