いきさつ
これがいまいちわからない。。
ジェネリックの意味
汎用とか、後発的、という意味です。
基本
<T>
は型の変数みたいなもんです。
なんらかの型を使うことだけ決めておいて、
インスタンス化するときにその型を決めることができます。
使い方の例
一番わかりやすい例としてはListを使うときの例でしょう!
// <T>がジェネリクスです
class List<T> {
private data: T[];
constructor(...elements: T[]) {
this.data = elements;
}
add(t: T) {
this.data.push(t);
}
}
let numbers = new List<number>(1, 2, 99);
numbers.add(11);
感想
でもこれを使うときって相当抽象的なClassを書くときとかでしか使えないよな〜?
いまいち使いみちがわからない。
今度なんかのソースを見てみたい。
-> やっぱそうみたい。
anyにできるところをジェネリクスに置き換えていく・・・みたいな目安?
fooMedthod(bar:ほにゃらら: keyof T){
console.log(bar);
}
keyofをこうやって使えばいいのね!!
参考
https://dev.to/micahriggan/typescript-generics-c8b
最近のコメント