変数は、プログラムを記述するための最も重要な要素。この記事では、JavaScriptの変数について学びます。
プログラムはアルゴリズムを用いて問題を解決しますが、ほとんどのアルゴリズムはそれを記述するのに変数を用いることが必須です。
変数とは
一言で表すと『変数は、値を入れておくための名前のついた箱』です。
データを一時的に記憶しておくための領域に固有の名前を付けたもの。データの入れ物のような存在で、プログラム中で複数のデータを扱いたいときや、同じデータを何度も参照したり計算によって変化させたい場合に利用します。
変数の宣言
プログラムの中で変数を使用する場合、以下のようにして変数を宣言します。
ver sum;
このステートメントにより、メモリ上にsumという名前のついた領域が生成されます。
verとは、変数を宣言するための宣言子と呼ばれます。sumの部分は変数名と呼ばれ、変数名を通じて変数の値にアクセスできます。
ワラ
カンマ(,)を使って複数の変数宣言を1つのステートメントで記述することできます。
ver sum, a;
変数に値を代入してみましょう。
イコール演算子(=)を使用すると、変数に値を代入することができます。
ver x;
x = 2;
変数『x』は『2』という値。という意味です。
変数宣言の際、初期値を設定することができます。
ver x = 2;
複数の変数宣言と初期値の設定を、1つのステートメントとして記述することもできます。
ver a = 1, b = 2, c = 3;
ワラ
変数宣言の省略
var文で宣言されていない変数に値を代入することができます。
x = 2;
console.log(x); // → 2
変数を宣言せずに値を代入すると、自動的にグローバル変数として宣言されます。記述内容を省略できて便利に見えますが、このように変数宣言をしないで変数を使用することはバグの原因となりますので、必ず変数宣言を使用するようにしましょう。
変数名の命名規則
変数名や関数名、ラベル名などユーザーが定義する名前を識別子と言います。識別子は以下の命名規則に従って定義する必要があります。
ECMAScript6の予約語
break | case | catch | class | const | continue |
debugger | default | delete | do | else | export |
extends | false | finally | for | function | if |
import | in | instanceof | new | null | return |
super | switch | this | throw | true | try |
typeof | var | void | while | with | yield |
ECMAScript6の将来の言語拡張用予約語
await | enum | implements | package | protected | interface |
private | public |
そのほか、予約語以外にも定義済みの変数や関数、DOMで指定しているオブジェクト名も使用しない方が良いでしょう。
変数名は識別子の命名規則に従っていれば自由につけることができます。変数の意味が分かるように、一定のルールを設けて変数名をつけておくとプログラムが読みやすくなります。以下のようなルールがよく用いられていますので是非参考にしてみてください。
キャメル記法(ローワーキャメル記法)
2つ目以降の単語の先頭文字を大文字にし、それ以外は小文字で記述します。
例)exampleCase
パスカル記法(アッパーキャメル記法)
単語の先頭文字を大文字にし、それ以外は小文字で記述します。
例)ExampleCase
アンダースコア記法(スネーク記法)
すべて小文字で複合語のスペースをアンダースコアで区切って記述します。
例)example_case
まとめ
プログラミングを覚える上で避けては通れない、『変数』。
しっかり理解して次のステップに移りましょう。