🎃
アロー関数とfunction それぞれの Type Guard 書き方
この記事では アロー関数で Type Guard について紹介します。
TypeScript: TS Playground - An online editor for exploring TypeScript and JavaScript
type Nigiri = {
category: 'nigiri'
neta: string
}
type Gunkan = {
category: 'gunkan'
neta: string
nori: number
}
type Sushi = Nigiri | Gunkan
function パターン
function isNigiri(sushi: Sushi): sushi is Nigiri {
return sushi.category === 'nigiri'
}
arrow function パターン
const isGunkan = (sushi: Sushi): sushi is Gunkan => sushi.category === 'gunkan'
// or
const isGunkan = (sushi: Sushi): sushi is Gunkan => {
return sushi.category === 'gunkan'
}
よくコロンを忘れて混乱する。
Discussion