概要: このチュートリアルでは、JavaScriptの変数と、アプリケーションで値を格納するために変数を使用する方法について学習します。
変数は、数値や文字列などの値を参照するラベルです。変数を使用する前に、宣言する必要があります。
変数の宣言
変数を宣言するには、var
キーワードの後に変数名を次のように記述します。
var message;
Code language: JavaScript (javascript)
変数名には、任意の有効な識別子を使用できます。デフォルトでは、message
変数に値を代入していない場合、特別な値undefined
が設定されます。
変数名の規則
- 変数名は大文字と小文字が区別されます。つまり、
message
とMessage
は異なる変数です。 - 変数名には、文字、数字、アンダースコア、またはドル記号のみを含めることができ、スペースを含めることはできません。また、変数名は文字、アンダースコア(
_
)、またはドル記号($
)で始める必要があります。 - 変数名には、予約語を使用できません。
慣例により、変数名はmessage
、yourAge
、myName
のようにキャメルケースを使用します。
JavaScriptは動的型付け言語です。これは、JavaやC#などの静的型付け言語のように、宣言に変数の型を指定する必要がないことを意味します。
ES6以降では、let
キーワードを使用して次のように変数を宣言できます。
let message;
Code language: JavaScript (javascript)
変数を宣言するには、let
キーワードを使用することをお勧めします。後で、var
キーワードとlet
キーワードの違いについて学習します。今はそれについて心配する必要はありません。
変数の初期化
変数を宣言したら、値で初期化できます。変数を初期化するには、変数名、等号(=
)、値の順に指定します。
たとえば、次の例では、message
変数を宣言し、リテラル文字列"Hello"
で初期化しています。
let message;
message = "Hello";
Code language: JavaScript (javascript)
変数を宣言と同時に初期化するには、次の構文を使用します。
let variableName = value;
Code language: JavaScript (javascript)
たとえば、次のステートメントは、message
変数を宣言し、リテラル文字列"Hello"
で初期化します。
let message = "Hello";
Code language: JavaScript (javascript)
JavaScriptでは、単一のステートメントを使用して2つ以上の変数を宣言できます。2つの変数宣言を区切るには、コンマ(,
)を次のように使用します。
let message = "Hello",
counter = 100;
Code language: JavaScript (javascript)
JavaScriptは動的型付け言語であるため、異なる型の値を変数に代入できます。ただし、これはお勧めできません。例えば
let message = 'Hello';
message = 100;
Code language: JavaScript (javascript)
変数の変更
変数を初期化したら、別の値を代入することで値を変更できます。例えば
let message = "Hello";
message = 'Bye';
Code language: JavaScript (javascript)
未定義変数と未宣言変数
未定義変数と未宣言変数を区別することが重要です。
未定義変数は、宣言されているが値で初期化されていない変数です。例えば
let message;
console.log(message); // undefined
Code language: JavaScript (javascript)
この例では、message
変数は宣言されていますが、初期化されていません。したがって、message
変数は未定義です。
対照的に、未宣言変数は宣言されていない変数です。例えば
console.log(counter);
Code language: JavaScript (javascript)
出力
console.log(counter);
^
ReferenceError: counter is not defined
Code language: JavaScript (javascript)
この例では、counter
変数は宣言されていません。したがって、アクセスするとReferenceError
が発生します。
定数
定数は、変更されない値を保持します。定数を宣言するには、const
キーワードを使用します。定数を定義するときは、値で初期化する必要があります。例えば
const workday = 5;
Code language: JavaScript (javascript)
定数を定義したら、その値を変更することはできません。
次の例では、workday定数の値を4に変更しようとしてエラーが発生します。
workday = 2;
エラー
Uncaught TypeError: Assignment to constant variable.
Code language: JavaScript (javascript)
後で、const
キーワードは実際には定数チュートリアルで値への読み取り専用参照を定義することを学習します。
まとめ
- 変数は、値を参照するラベルです。
- 変数を宣言するには、
let
キーワードを使用します。 - 未定義変数は、宣言されているが初期化されていない変数であり、未宣言変数は宣言されていない変数です。
- 値への読み取り専用参照を定義するには、
const
キーワードを使用します。