通常、複数の変数を扱いながらプログラムを作成します。
各変数には機能ごとに異なる変数名を付けて管理しますが、初学者であれば、どのような名前を付けたら良いのか迷ってしまうことも少なくありません。
今回は、適切な変数名を付けられるように、ネーミングルールと命名規則について解説していきます。
変数名のルール
JavaScriptでは、変数名に使用できる文字や記号の制限があります。
以下は、変数に付けられる名前のルールです。
・Unicode文字、数字、記号(_
と$
)のみを組み合わせた名前にする
・はじめの文字に数字は使用できない
・予約語と同じ名前は変数名に使用できない
・大文字と小文字は区別される
正しい例
これらのルールに沿った正しい変数名の例を見てみましょう。
小文字・大文字のアルファベットや、アルファベットと数字、記号(_と$)を組み合わせた変数名が可能です。
let user; // 小文字のアルファベットの利用
let USER; // 大文字のアルファベットの利用
let user123; // 数字(先頭以外)の利用
let user_name; // _ アンダーバーの利用
let $user; // $ ドルの利用
厳密には、Unicodeにある文字であれば変数名に使用することができるため、日本語の文字を使うこともできます。
let 日本語の変数;
しかし、日本語への入力切替が必要なことや、チーム内で日本語の統一化が必須となり、日本語に起因する問題が起こることも考えられます。
そのため、特別な理由がない限りは、日本語は使用せず、半角英数を使用することが推奨されます。
誤った例
次に、誤った変数名の例です。
変数名に数字を含めることは可能ですが、数字から開始することはできません。
let 10th; // 数字で始まっている
let 100; // 数字のみ
また、アンダーバー_
とドル$
以外の記号を使用することもできません。
let my-name; // - ハイフン
let email@; // @ アットマーク
JavaScriptには、予約語と呼ばれる、構文としての意味を持つキーワードがあります。
例えば、let
, function
, if
, class
などです。
このような予約語を変数名として使用した場合にもエラーとなります。
let let; // 予約語let
let function; // 予約語function
大文字と小文字は区別される
大文字と小文字は区別されるため、以下の変数はそれぞれ異なる変数として扱われます。
let username; // 小文字のみ
let userName; // はじめの単語を小文字→2番目以降の単語の先頭を大文字
let UserName; // すべての単語の先頭を大文字
let USERNAME; // 大文字のみ
命名規則
変数名のルールに沿っていれば自由に変数名を付けることができますが、命名規則に沿った変数名を付けることが推奨されています。
命名規則とは、プログラムの変数名や関数名などを付けるための規約で、プログラムの効率化やメンテナンスをしやすくすることを目的としています。
以下の3つは、JavaScriptで採用されている代表的な命名規則です。
・キャメルケース
・パスカルケース
・スネークケース
キャメルケース
キャメルケースは、はじめの単語はすべて小文字、2番目以降の単語の先頭文字を大文字にする記述法です。ローワーキャメルケースと呼ばれることもあります。
let camelCase;
let userName;
変数名や関数名、オブジェクトのプロパティ名やメソッド名に採用されています。
この記事のトピックでもある変数名は、多くの場合キャメルケースが使われています。
パスカルケース
パスカルケースは、すべての単語の先頭文字を大文字にする記述法です。アッパーキャメルケースと呼ばれることもあります。
let PascalCase;
let UserName;
クラス名やコンポーネント名に利用されています。
スネークケース
スネークケースは、単語をすべて小文字または大文字にし、単語と単語をアンダーバー_
で繋げる記述法です。
let snake_case;
let USER_NAME;
定数名では、すべての単語を大文字にするスネークケースが良く使われています。
まとめ
今回は、変数名のルールと命名規則について解説しました。
変数名を付けることは、プログラミングにおいてとても重要なスキルです。
特に初学者であれば、変数名を付けるだけでも時間がかかってしまったり、適切な名前を付けられるようになるまで慣れが必要です。
まずは、ルールや命名規則に沿ること、自分の中で統一性のある変数名を付けられるように意識していきましょう。
合わせて読みたい変数入門シリーズ
第1回:変数と宣言
第2回:変数名のルールと命名規則(当記事)
コメント