← inaro.devAI駆動開発 学習ツール
中級

ジェネリクスを読む

なぜ学ぶか: useState<string>Promise<User> — AIのコードには<>付きの型がたくさん出ます。自分で書けなくてOK、まず「読める」ことが目標です。下の例を見てください。

まずはこの例を見てみましょう

// <> は「〜用の」という型の指定。まずは読み方から

const [name, setName] = useState<string>(""); // 「string 用の state」

// 自作もできる: T は「使うときに決まる」型の仮の名前
function first<T>(arr: T[]) {
  return arr[0];
}

first([10, 20, 30]); // 数値の配列を渡した → T は number に決まる
first(["a", "b"]);   // 文字列の配列を渡した → T は string に決まる

「<>の中=何を扱うか」。ここだけ読めれば、複雑な型も怖くありません。

<>=「〜用の」という指定

例のuseState<string>は「string用のuseState」。Promise<User>なら「あとでUserが届く」。「〜用の」と読み替えればOKです。

T=あとで決まる型の仮の名前

例のfirstは、数値にも文字列にも使えます。渡した配列に合わせてTが決まる — 1つの関数を安全に使い回す仕組みです。

anyとの違いは「型が残る」こと

何でも入るのは同じでも、ジェネリクスは入れた型を覚えているので、チェックが効き続けます。anyは型を捨ててしまいます。

ステップ 1 / 3

※ カリキュラムの内容はAIが生成しており、誤りが含まれる場合があります。正確な情報は公式ドキュメント等でご確認ください。