列挙型宣言及び列挙型変数は、コードの可読性向上のために多くの言語でenumというキーワードでサポートされています。Javascriptでも機能はサポートされているのですが、enumというキーワードは使わず通常のvarキーワードで宣言するので注意が必要です。構文の若干違います。(TypescriptではC、javaと同じ構文になっています。)
宣言 var 列挙型タグ名 { 定数1 = 1, 定数2 = 2, | 定数n = n }; 列挙型変数定義と利用 var 変数; 変数 = 列挙型タグ名.定数i; if( 変数 == 列挙型タグ名.定数i) { 処理a; } else { 処理b; }
サンプル
<!DOCTYPE html> <html lang="UTF-8"> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>enum in JavaScript</title> <script type="text/javascript"> var SEASONS = { SPRING : 1, SUMMER : 2, AUTUMN : 3, WINTER : 4 }; var season; season = SEASONS.SUMMER; </script> </head> <body> <script type="text/javascript"> alert("emun in javascript sample\n"); if(season == SEASONS.SUMMER){ alert("夏ですね"); } else { alert("夏ではないですね"); } </script> </body> </html>