js局部变量和全局变量的小例子

最近通过询问研究了一下js的局部变量和全局变量,一下找的例子然后注释的自己的理解。

var a =1;    //全局变量                                               var a =1;
function test(){                                                      function test(){  
   alert(a);                                                          var a;
   var a = 2;    //声明局部变量,声明提前。变量在这里赋初始值,              alert(a); 
但变量本身在函数体内任何地方均是有定义的。                                   a = 2; 
   alert(a);                                    等价于                  alert(a); 
}                                                                      } 
test();                                                                test();                                                      
alert(a);                                                              alert(a);   
//有两个变量,一个局部变量。一个全局变量。在函数体内,局部变量覆盖了同名全局变量。
只有程序执行到var语句时,局部变量才被真正赋值。在函数体内,局部变量的优先级高于同名的全局变量。如果在函数内声明的一个局部变量或者函数参数中带有的变量和全局变量重名,那么全局变量就被局部变量所遮盖。


undefined, 2, 1

var a =1;    
function test(){    
  alert(a);    
  a = 2;    //函数内部声明变量的时候,一定要使用var命令。如果不用的话,你实际上声明了一个全局变量!
  alert(a);    
}    
test();    
alert(a);   
//有一个变量


1  2  2

var a =1;                                             var a =1;
function test(){                                     function test(){ 
    alert(a);                                             var a; 
    a=4                                                   alert(a);
    alert(a);                  等价于                      a=4
    var a;                                                alert(a); 
    alert(a);                                             alert(a);  
}                                                     }
test();                                               test();
alert(a);                                             alert(a); 



上面的例子结果依次为:undefined, 4, 4, 1


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值