みなさんこんにちは、現役エンジニアのサメハックです
未経験からWebエンジニアに転職し、
正社員として5年働いたのちフリーランスとして独立しました。
TypeScriptの解説シリーズです。
今回はenum型について学んでいきましょう!
駆け出しエンジニアや未経験の方、
また新入社員を指導する先輩社員にとっても
わかりやすいように解説していきます!
この記事を読むと・・・
- enum型の使い方がわかる
型が厳格に指定できるので、とても便利だよ!
enum型について
enum型とは
ENUM型(列挙型)は関連する値の集合を表現するデータ型です。
たとえば色や曜日、月、状態などの値のセットをENUM型を使用して表現できます。
Red, Blue, Pinkのように値を列挙して使用するよ!
enum型の構文
export enum データ名 {
値1,
値2,
値3,
値4,
}
同一ファイル内で使用するだけならexportはいらないよ!
サンプルコード
// 曜日を表すENUM型
enum DayOfWeek {
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday
}
// 変数をDayOfWeek型として宣言
let today: DayOfWeek;
// 水曜日を定義
today = DayOfWeek.Wednesday;
// ENUM型の値を文字列で取得して表示
console.log(DayOfWeek[today]); // "Wednesday"
// Saturdayの実際の値を取得
console.log(DayOfWeek.Saturday); // 6
このように使うよ!
enum型の正体
enum DayOfWeek {
Sunday, // 0
Monday, // 1
Tuesday, // 2
Wednesday, // 3
Thursday, // 4
Friday, // 5
Saturday // 6
}
enum型の中身は実はただの整数値です。
整数に値をマッピングして管理しやすいようにしています。
enum型を活用すると
マジックナンバー(ハードコーディングされた数値)の使用を避けることができるよ!
マジックナンバー(ハードコーディングされた数値)の使用を避けることができるよ!
enum型と紐づく整数値を任意に設定したい
enum型は基本的に0からスタートします。
しかし、DBの値と紐づけて管理したいときなどには
任意の整数値を設定することができます。
export enum UserId {
Samehack = 1,
Tom = 10,
John = 99
}
console.log(UserId.Samehack); // 1
console.log(UserId.Tom); // 10
console.log(UserId.John); // 99
こうすることで、一時的な値以外にもenum型を使用できるよ!
まとめ
- ENUM型(列挙型)は関連する値の集合を表現するデータ型
- 値と整数値が紐づく
- 整数値は基本的に0スタートだが任意の整数値の設定も可能
満足いただけたら、1クリックなのでSNSフォローしてもらえると嬉しいです🦈