アジェンダ
JavaScriptの変数管理においての、宣言、初期化、代入の概念について簡単にまとめます。
1. 宣言(Declaration)
変数の宣言は、その変数をJavaScriptのメモリ空間に確保することです。var
、let
を使って変数を宣言します。
var
var x;
let
let y;
宣言された変数は、それが属するスコープ内で使用可能になります。
-
❌
const
(宣言ができない)
constキーワードを使って変数を宣言する際に値を指定しないと、SyntaxErrorが発生します。
// エラーが発生する
const z;
エラー内容
SyntaxError: Missing initializer in const declaration
constは「定数」という名前が示すように、その値が変更されないことを保証しているため、constで宣言された変数には、宣言と同時に値を割り当てる必要があります。
値を指定しない宣言は意味を成さず、エラーとして扱われます。
2. 初期化(Initialization)
初期化は、変数に初めて値を設定することです。宣言時に同時に初期化することも可能です。
var
の宣言と初期化
var x = 10;
let
の宣言と初期化
let y = 20;
const
の宣言と初期化
const z = 30;
const
の場合、宣言時に必ず初期化が必要です。var
やlet
は宣言時に初期化しなくても構いませんが、初期化されるまではundefined
の値を持ちます。
3. 代入(Assignment)
代入は、既に宣言されている変数に値を設定することです。これは初期化後でも行うことができます。
var
の代入
var x;
x = 10;
let
の代入
let y;
y = 20;
-
❌
const
の代入(再代入不可)
const
は再代入ができないため、一度初期化した後に値を変更することはできません。
const z = 30;
// z = 40; // エラーが発生します
具体例を通じて理解する
// 宣言
let a;
var b;
// const c; // エラーが発生します
// 初期化
a = 10;
b = 20;
const c = 5; // 宣言と初期化を同時に行う
// 代入
a = 15; // aは再代入可能
b = 25; // bも再代入可能
// c = 30; // エラーが発生します
まとめ
- 宣言は変数をメモリに確保することです。
- 初期化は変数に初めて値を設定することです。
- 代入は既存の変数に新たな値を設定することです。