javascript中变量没有块级作用域---函数内申明的变量在整个函数中都有效!
代码:
 var g = "a"
var g = "a"
 function test()
function test()
 {
{
 alert(g);   //输出"undefined",而不是"a"
    alert(g);   //输出"undefined",而不是"a"
 var g =  "local";
    var g =  "local";
 alert(g)   //输出local
    alert(g)   //输出local
 }
}
原因很简单: 由于内部变量g 在函数内部处处有效,在执行第一个alert(g)的时候,已经var了这个局部变量,但还没赋初值,因此会输出undefined
 var g = "a"
var g = "a" function test()
function test() {
{ alert(g);   //输出"undefined",而不是"a"
    alert(g);   //输出"undefined",而不是"a" var g =  "local";
    var g =  "local"; alert(g)   //输出local
    alert(g)   //输出local }
}原因很简单: 由于内部变量g 在函数内部处处有效,在执行第一个alert(g)的时候,已经var了这个局部变量,但还没赋初值,因此会输出undefined
 
                    
                     
                    
                 
                    
                

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号