当前位置: 代码迷 >> JavaScript >> 变量作用域有关问题。
  详细解决方案

变量作用域有关问题。

热度:312   发布时间:2012-02-19 19:43:37.0
变量作用域问题。。
JScript code


var str = "out";

function test(){
 alert(str); 
 var str = "in";
}

test();




为何弹出“undefined”,而不是“out”呢?

就这么点分了,希望指点。

------解决方案--------------------
因为js是先定义后执行的,你的代码等价于
JScript code
    var str = "out";
    function test(){
        var str;
        alert(str); 
        str = "in";
    }
    test();

------解决方案--------------------
之前是有帖子讨论过,你这样写法是相当于:

JScript code
var str = "out";

function test(){
 var str; 
 alert(str); 
}

test();

------解决方案--------------------
javascript 预编译 作用域
  相关解决方案