变量作用域

来源:互联网 发布:java正则表达式匹配{} 编辑:程序博客网 时间:2024/06/05 16:26

变量作用域

变量可分为两种:局部变量和全局变量

局部变量:在函数内部定义的变量,只能在函数内部起作用,如:

function localVar(){
    var a= 1;
    alert(a);
}
localVar();
alert(a);

其中,var a = 1;就是局部变量;

与之对应,将var a = 1;放在函数外面,就是全局变量:

var 1;

function localVar(){
    alert(a);
}
localVar();
alert(a);

注意:当把局部变量中的var去掉,就会变成全局变量,即:

function localVar(){
    1;
    alert(a);
}
localVar();
alert(a);

局部处理原则:就近原则

      当局部变量和全局变量存在相同的变量名的时候,代码不会按常规的自上而下的执行方式,而是会采用就近原则:

var a = 1;
function doubleVar(){
    var a =2;
    alert(a);
}
doubleVar();

输出结果为:2

var a = 1;

 alert(a);
function doubleVar(){
    var a =2;
}
doubleVar();

输出结果为1