🙃
【JavaScript】ローカル変数 と グローバル変数について(備忘録)
1.はじめに
JavaScriptの変数には、スコープ(有効範囲)に基づいてローカル変数とグローバル変数があります。
2.ローカル変数について
関数内で定義される変数です。
変数定義された関数内のみで有効であり、外部からアクセスできません。
3.グローバル変数について
関数外で宣言される変数で、プログラム全体で有効です。
ソースコードの可読性・保守性の維持と変数の上書き防止等の理由により、グローバル変数の使用は推奨されません。
4.サンプルプログラム
〇例1:ローカル変数のみを使用
Sample_1.js
function test() {
let name = '鈴木';
console.log(name);
}
test();
console.log(name);
実行結果
鈴木
/tmp/Sample_1.js:9
console.log(name);
^
ReferenceError: name is not defined
〇例2:letを使用せずローカル変数を宣言
Sample_2.js
function test() {
name = '鈴木';
console.log(name);
}
test();
console.log(name);
実行結果
鈴木
鈴木
〇例3:グローバル変数のみを使用
Sample_3.js
let name = '鈴木';
function test() {
console.log(name);
}
test();
実行結果
鈴木
〇例4:グローバル変数とローカル変数を誤って併用
Sample_4.js
let name = '鈴木';
function test() {
// letを使用せずローカル変数を宣言
name = '大谷';
console.log(name);
}
console.log(name);
test();
console.log(name);
実行結果
鈴木
大谷
大谷
〇例5:グローバル変数とローカル変数を正しく併用
Sample_5.js
let name = '鈴木';
function test() {
// letを使用してローカル変数を宣言
let name = '大谷';
console.log(name);
}
console.log(name);
test();
console.log(name);
実行結果
鈴木
大谷
鈴木
〇例6:グローバル変数とローカル変数を使用した計算
Sample_6.js
let num_1 = 5;
function test() {
let num_2 = 10;
let num_3 = num_1 + num_2;
console.log(num_3);
}
test();
実行結果
15
5.参考
・JavaScriptでグローバル変数を使わない方が良いみたい
・ローカル変数
・外部変数
6.その他
・実行環境
Discussion