TypeScript 実装から型をつくる方が良いケース
TypeScriptを使う場合は、普通は設計である型を先に定義し、それを元に実装をします。
しかし、逆に実装から型を作った方が良いケースもあります。そういう場合は typeof を使います。
type T1 = 'hoge' | 'foo' | 'bar'
const a: T1[] = ['hoge', 'foo', 'bar']
この例では hoge foo bar を二回書いてしまっています。
typeof を使って値から型を作ると以下のようになります。
const a = ['hoge', 'foo', 'bar'] as const
type T1 = typeof a[number]
最近のコメント