Readonly<T>
Readonly<T>
は、オブジェクト型T
のプロパティをすべて読み取り専用にするユーティリティ型です。
#
Readonly<T>の型引数#
T型引数T
にはオブジェクト型を代入します。
#
Readonlyの使用例typescript
type Person = {surname: string;middleName?: string;givenName: string;};type ReadonlyPerson = Readonly<Person>;
typescript
type Person = {surname: string;middleName?: string;givenName: string;};type ReadonlyPerson = Readonly<Person>;
上のReadonlyPerson
は次の型と同じになります。
typescript
type ReadonlyPerson = {readonly surname: string;readonly middleName?: string;readonly givenName: string;};
typescript
type ReadonlyPerson = {readonly surname: string;readonly middleName?: string;readonly givenName: string;};
#
Readonlyの効果は再帰的ではないReadonly<T>
が読み取り専用にするのは、オブジェクト型T
直下のプロパティのみです。プロパティがオブジェクトだった場合、それが持つプロパティまでは読み取り専用に注意してください。