🐹
配列の要素をリテラル型にする方法[TypeScript]
やりたいこと
const fruits = ["apple", "banana", "cherry"]
この配列を参照して,
type Fruits = "apple" | "banana" | "cherry"
という型をも作りたい.
どうやるの?
まず配列をreadonlyにする
const fruits = ["apple", "banana", "cherry"] as const
as const
をつけることで,配列の要素は全てreadonlyとなる.
typeofを使って型を作成
そこで,こうする.
type FruitsType = typeof fruits[number]
これで,
type Fruits = "apple" | "banana" | "cherry"
と同義になる🎉
Discussion