JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScript変数の命名規則を徹底解説!守るべきルールとキャメルケースの基本

JavaScript変数の命名規則(ルール)

JavaScriptで変数に名前を付ける際には、守らなければならない厳密な「ルール」(単なる推奨ガイドラインではなく、必須の規則)が存在します。ここでは、その基本ルールをわかりやすく解説します。

変数名に適用される基本ルール

  • 変数名に使用できるのは、半角英数字(a〜z のアルファベットと 0〜9 の数字)、アンダースコア(_)、ドル記号($)のみです。
  • 変数名を数字で始めることはできません
  • 変数名の先頭は、アルファベット・ドル記号($)・アンダースコア(_のいずれかで始める必要があります。
  • 変数名にスペースを含めることはできません
  • 変数名には、truethis などの予約語(reserved keywords)を使用できません

予約語(Reserved Keywords)とは?

JavaScriptには、言語仕様として特別な意味を持つ「予約語」が数多く定義されています。これらの予約語をそのまま変数名として使おうとすると、次のようなエラーが発生します。

let this = "hey you"
// Uncaught SyntaxError: Unexpected token 'this'

このように this はJavaScriptにおいて特別な役割を持つキーワードであるため、変数名として利用すると構文エラー(SyntaxError)になります。letconstfunctionclass なども同様に予約語です。

大文字と小文字は区別される(Case Sensitivity)

JavaScriptでは、変数名の大文字と小文字は厳密に区別されます。次の2つの変数は、発音(読み方)はまったく同じですが、片方は大文字を含み、もう片方はすべて小文字です。

  • helloThere
  • hellothere

JavaScriptの世界では、この2つはまったく別の変数として扱われます。そのため、変数を宣言するときも参照するときも、大文字・小文字の違いに常に注意を払うことが重要です。

推奨される命名スタイル:キャメルケース(camelCase)

変数名を大文字で始めること自体は可能ですが、素のJavaScript(バニラJavaScript)のコードで最も広く使われている命名パターンは「キャメルケース(camelCase)」です。これは、変数名の最初の単語の頭文字を小文字にし、2つ目以降の単語の頭文字を大文字にする記法です。

let aGoodRuleOfThumb

このように書くことで、単語の区切りが視覚的にわかりやすくなり、コードの可読性が大きく向上します。チーム開発やオープンソースのプロジェクトでもキャメルケースが事実上の標準となっているため、JavaScriptを学び始めたばかりの方は、最初からこの命名スタイルに慣れておくことをおすすめします。

  1. 【初心者向け】JavaScriptのfor...ofループの使い方を実例つきで解説

    JavaScriptのfor...ofループは、配列、文字列、配列風オブジェクト(Array-like objects)、NodeListなど、反復可能(イテラブル)なオブジェクトの要素を先頭から順番に1つずつ取り出して処理するための構文です。 インデックスの管理が不要なため、従来のforループやforEachメソッドと比べてコードが簡潔になり、可読性や保守性が向上するというメリットがあります。 for...ofループの基本構文 for (変数 of 反復可能オブジェクト) {   // 各要素に対して実行したい処理 } サンプルコード 次の例では、for...ofループを使って文

  2. JavaScriptの「for...in」ステートメントとは?オブジェクトのプロパティをループ処理する方法を解説

    JavaScriptのfor...in文は、オブジェクトが持つすべてのプロパティ(列挙可能なプロパティ)を順番に取り出して処理するためのループ構文です。オブジェクト内の各キー(プロパティ名)にアクセスしながら、対応する値を取得したい場合に非常に便利です。for...inの基本的な構文for (let 変数名 in オブジェクト) { // 各プロパティに対して実行したい処理 }ループ変数には、各反復ごとにオブジェクトのプロパティ名(キー)が文字列として代入されます。値そのものを取得するには、「オブジェクト[変数名]」のようにブラケット記法を使ってアクセスします。サンプルコード以下は、for