JavaScript徹底ガイド|変数と値について学ぶ

JavaScript

変数は、プログラムを記述するための最も重要な要素。この記事では、JavaScriptの変数について学びます。
プログラムはアルゴリズムを用いて問題を解決しますが、ほとんどのアルゴリズムはそれを記述するのに変数を用いることが必須です。

変数とは

一言で表すと『変数は、値を入れておくための名前のついた箱』です。
データを一時的に記憶しておくための領域に固有の名前を付けたもの。データの入れ物のような存在で、プログラム中で複数のデータを扱いたいときや、同じデータを何度も参照したり計算によって変化させたい場合に利用します。

変数の宣言

プログラムの中で変数を使用する場合、以下のようにして変数を宣言します。

JavaScript
ver sum;

このステートメントにより、メモリ上にsumという名前のついた領域が生成されます。
verとは、変数を宣言するための宣言子と呼ばれます。sumの部分は変数名と呼ばれ、変数名を通じて変数の値にアクセスできます。

ワラ

変数名は、任意の名前で記述することができるよ!

カンマ(,)を使って複数の変数宣言を1つのステートメントで記述することできます。

JavaScript
ver sum, a;
MEMO
変数を宣言しただけの場合、変数には未定義を表す『undefined』という値が入ります。

変数に値を代入してみましょう。
イコール演算子(=)を使用すると、変数に値を代入することができます。

JavaScript
ver x;
x = 2;

変数『x』は『2』という値。という意味です。

MEMO
プログラミングの「=」は「等しい」という意味ではなく、「右辺を左辺に代入する」ということを意味します。

変数宣言の際、初期値を設定することができます。

JavaScript
ver x = 2;

複数の変数宣言と初期値の設定を、1つのステートメントとして記述することもできます。

JavaScript
ver a = 1, b = 2, c = 3;

ワラ

複数の変数宣言は、変数の量が増えると読みづらくなったりするから書方に工夫が必要だね、、

変数宣言の省略

var文で宣言されていない変数に値を代入することができます。

JavaScript
x = 2;
console.log(x); // → 2

変数を宣言せずに値を代入すると、自動的にグローバル変数として宣言されます。記述内容を省略できて便利に見えますが、このように変数宣言をしないで変数を使用することはバグの原因となりますので、必ず変数宣言を使用するようにしましょう。

変数名の命名規則

変数名や関数名、ラベル名などユーザーが定義する名前を識別子と言います。識別子は以下の命名規則に従って定義する必要があります。

使用できる文字
英文字(a-z,A-Z)、数字(0-9)、アンダースコア(_)ドル記号($)のいずれか。
1文字目での数字は使用不可
英文字(a-z,A-Z)、アンダースコア(_)ドル記号($)のいずれから始まらなければならない。
予約語の使用不可
識別子に予約後を使用することはできません。

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

まとめ

プログラミングを覚える上で避けては通れない、『変数』。
しっかり理解して次のステップに移りましょう。