JavaScriptローカル変数、グローバル変数とスコープチェーン
499 ワード
ローカル変数
最外層関数によって定義された変数は、グローバルスコープ、すなわち任意の内部関数にアクセスします.
グローバル変数
ローカルスコープは一般的に固定コードセグメント内でのみアクセスできますが、関数の外部にはアクセスできません.
スコープチェーン
外部関数変数に内部関数によりアクセスできるこの機構(すなわち、それらは作用するドメインチェーン上にある).内部関数が変数にアクセスするときは、まず関数の内部を検索し、ない場合はその外部関数を検索します.(息子はお金がないと理解できます.お父さんはおじいさんに聞いていません.兄弟を探してはいけません.もう分家しています.つまり、一つの作用範囲チェーン上にいません.)
関数内部で変数を宣言する場合には、var宣言(すなわち関数式で関数を作成する
最外層関数によって定義された変数は、グローバルスコープ、すなわち任意の内部関数にアクセスします.
グローバル変数
ローカルスコープは一般的に固定コードセグメント内でのみアクセスできますが、関数の外部にはアクセスできません.
スコープチェーン
外部関数変数に内部関数によりアクセスできるこの機構(すなわち、それらは作用するドメインチェーン上にある).内部関数が変数にアクセスするときは、まず関数の内部を検索し、ない場合はその外部関数を検索します.(息子はお金がないと理解できます.お父さんはおじいさんに聞いていません.兄弟を探してはいけません.もう分家しています.つまり、一つの作用範囲チェーン上にいません.)
関数内部で変数を宣言する場合には、var宣言(すなわち関数式で関数を作成する
var f2 = function() {}
)が必要です.使用しない場合は(関数宣言式で関数function f1() {}
を作成する)、グローバル変数を実際に宣言しました.(関数アップが現れます)