Madea-K Dev

プログラムのメモや日々思ったことなど

< 35歳迄に起業し1000万円以上稼ぐ >

Generics

extends による制約

keyof
keyof Tは、Tに対して許可されるプロパティ名の型をもたらします。

と書くと、 UserKey は ‘name’ | ‘age’ というtypeになるよ、ということ。
T[K] で「T に対してK型でアクセスして得られるtype」を表現できる
K は、keyof T を満たすtypeであれば良いので、例えば
type UserName = User['name'];
とすると、UserName のtypeは string になる。 User[‘age’] とすれば number。

extendsシグネチャ

次の3つを組み合わせたものをシグネチャと呼びます。
– メソッド名
– 引数の数
– 引数の型

Conditional Types

Conditional Typesは「T extends X ? Y : Z」という構文で表されます。
T型がX型と互角性がある場合はY型が、そうでない場合はZ型が適用されます。

参照元 : https://qiita.com/Quramy/items/e27a7756170d06bef22a#static-types-for-dynamically-named-properties

/ TypeScript

×