JSのグローバル変数&ローカル変数
4541 ワード
1 <script>
2 var i=10; //
3 j = 20; //
4
5 function(){
6 var i=30; //
7 h = 40; //
8 }
9 </script>
これにより一つの文をまとめることができます.関数の内部で定義されているのは局部変数です.そうでなければグローバル変数です.1 <script>
2 var i =10;
3 function display(){
4 //var i = 20;//
5 i= 30; // , i 30
6 }
7 alert(i);// 10 30
8 </script>
関数内の変数はvar宣言がないと、グローバル変数に直接影響を及ぼします.なぜvarの変数がないのですか?グローバルなのですか?
というのは、jsでは、ある変数にvar声明がないと、自動的に前のロールフィールドにこの変数のステートメント文を探しに行きます.見つけたら、呼び出します.見つかっていない場合は、グローバルスコープまで検索し続けます.グローバルスコープにはまだこの変数の声明文がない場合、自動的にグローバルスコープ内で声明が出されます.これはjs中のスコープです.
1 <script>
2 window.onload = function display(){
3 i= 30;
4 }
5 alert(i);
6 </script>
ポップアップの結果は30です.この例を見てください.
1 <script>
2 var i = 10;
3 function fn1(){
4 i=100;
5 function fn2(){
6 i=1000;
7 function fn3(){
8 i=10000;
9 }
10 fn3();
11 }
12 fn2();
13 }
14 fn1();
15 alert(i);
16 </script>
実行の結果は10000です.今fn 1の中のi値をvar=100に変更したら.イジェクトiの値は:10;
ローカルアクセスグローバル使用スコープ
グローバルアクセスローカルは、クローズド関数シミュレーションを使用することができます.