变量作用域有关问题。

变量作用域问题。。JScript codevar str outfunction test(){ alert(str)var str in}test()为何

变量作用域问题。。

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 预编译 作用域