typescript の 合併型「Union Types」と交差型「Intersection Types」

● 合併型「Union Types」= OR

OR
指定した型のどれかにマッチすれば良い。

typeの場合

type DrinkOrFood = Drink | Food;

● 交差型「Intersection Types」 = AND

AND
指定した型の全てにマッチすれば良い。

typeの場合

type Drink AndFood = Drink & Food;

interfaceの場合

interface Drink AndFood extends Drink, Food {}

型ガード(例: data に x というプロパティがあるかどうか?)

  if ('x' in data) {
  }
No.2209
09/07 14:18

edit