JavaScriptのスコープ

1327 ワード

JavaSocptでは、スコープは変数へのアクセスが可能です.日に戻ると、変数を宣言するためにキーワード“var”だけを使用できます.それは宣言の恐ろしい練習でした.変数がキーワード“var”で宣言されるとき、それはブロックスコープを持つことができません.例えば、{ }ブロックの中で変数を宣言するとき、{ }ブロックの外でもアクセスできます.
EX :
{
   var a = 1;
}
// a can be used here
つまり、ブロック内の変数を作成することができ、ローカル変数と同じ変数を宣言できます.これらの変数の両方とも変数を変更するでしょう.
この問題を解決するために、JavaScriptは2つの新しいキーワードを導入しました.“let”はブロックスコープ内で変数を宣言するために使用されます.“const”キーワードは変数を変更したくないときに使用されます.
スコープの2つの方法はグローバルスコープと関数スコープです.関数の外部で宣言された変数は、グローバルに使用できます.これらの変数はファイルのどこからでもアクセスできます.
EX :
let x = 0 // Global Scope
関数の内部で宣言された変数はアクセスできません.これは関数スコープと呼ばれます.関数のスコープ内でのみアクセス可能です.
EX :
function x(){
   let y = 1 // Function Scope
}