了解!まず「1段階目」として、スコープ(scope)の基本を、超シンプルな例で、文法と一緒に解説します。
「変数がどこで使えるかを理解すること」
scope-step1.js
//変数xに数値5を代入(これはグローバルスコープ)
const x = 5;
//関数myFunctionを定義(関数宣言)
function myFunction() {
//変数yに数値10を代入(これはmyFunction内だけで使える=ローカルスコープ)
const y = 10;
//xはグローバルスコープなので、関数内でも使える
console.log("xの値は: " + x);
//yはこの関数の中で作った変数なので、ここで使える
console.log("yの値は: " + y);
}
//関数を実行
myFunction();
//関数の外でyを使おうとするとエラーになる(スコープの外)
console.log(y); // ← これはエラー!
const 変数名 = 値;
→ 「定数(変更できない)」変数を作る書き方
→ 今回は x
や y
をこの方法で作っている
function 関数名() { ... }
→ 関数宣言(function declaration)
→ { ... }
の中が その関数のスコープ(見える範囲)
グローバルスコープ(全体で見える)
→ x
ローカルスコープ(関数の中だけ)
→ y
console.log(y);
これは「y
は myFunction
の中で作った変数」だから、
関数の外では見えない → エラーになる。