メインコンテンツまでスキップ

型と集合

詳しくは後ほどやるのですが、ここでとりあえずTypeScriptの型と集合の関係性について結論だけ述べておきます。

  • TypeScriptにおける型は集合である

(正確にどうかは知りませんが、そうであるかの様に動きます)

また、ある型Aと型Bがあって集合としてみた時にBがAの部分集合である時、BはAの部分型であると言います。

そしてこれに基づいてTypeScriptのルールを述べておくと

  • 型Aの値を型Bに代入できる = 型Aが型Bの部分型である
  • ただしanyと関数の型については
    • anyにはルールがない
    • 関数の型には別のルールが存在する