Mapped Type:オブジェクト型の変換
キーを反復して新しい型の形状を作成します。
「Mapped Type:オブジェクト型の変換」はCoddyKit上の無料TypeScript Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはTypeScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 TypeScript Academyコースには全4レッスンが含まれています。
ようこそ
マップ型の基本構文
type Copy<T> = { [K in keyof T]: T[K] };
type UserCopy = Copy<User>; // same as Userすべてのプロパティをオプショナルにする
type Partial<T> = { [K in keyof T]?: T[K] };
type PartialUser = Partial<User>;すべてのプロパティを読み取り専用にする
type Readonly<T> = { readonly [K in keyof T]: T[K] };
type FrozenUser = Readonly<User>;値の型を変換する
type Stringify<T> = { [K in keyof T]: string };
type StringUser = Stringify<User>; // all values are stringneverを使ったプロパティのフィルタリング
type OnlyStrings<T> = {
[K in keyof T as T[K] extends string ? K : never]: T[K]
};Record<K, V>
type Record<K extends string | number | symbol, V> = { [P in K]: V };
const roles: Record<'admin' | 'user', boolean> = { admin: true, user: false };マップ型によるオプショナル性の維持
interface User { id: number; name?: string; }
type Copy<T> = { [K in keyof T]: T[K] };
type C = Copy<User>; // id: number; name?: string (preserved)asによるキーの再マッピング
type Getters<T> = {
[K in keyof T as `get${Capitalize<string & K>}`]: () => T[K]
};ユニオンの反復処理
type Flags = { [K in 'option1' | 'option2' | 'option3']: boolean };マップ型と条件型の組み合わせ
type NullableValues<T> = { [K in keyof T]: T[K] | null };確認問題
まとめ
よくある質問
「Mapped Type:オブジェクト型の変換」レッスンは無料ですか?
はい。「Mapped Type:オブジェクト型の変換」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、TypeScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 TypeScript Academyコースには全4レッスンが含まれています。
「Mapped Type:オブジェクト型の変換」で何を学びますか?
キーを反復して新しい型の形状を作成します。 ブラウザで直接実行するハンズオンコードでTypeScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
TypeScript Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのTypeScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「Mapped Type:オブジェクト型の変換」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このTypeScript Academyレッスンでコードを書いて実行できますか?
はい。すべてのTypeScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Mapped Type:オブジェクト型の変換
- Mapped Typeの修飾子:readonlyと?
- テンプレートリテラル型:文字列パターン
- Mapped Typeのasによるキーの再マッピング