内容来源:http://www.cnblogs.com/TomXu/archive/2011/12/28/2286877.html

JavaScript中,你可以在函数的任何位置声明多个var语句,并且它们就好像是在函数顶部声明一样发挥作用,这种行为称为 hoisting(悬置/置顶解析/预解析)。当你使用了一个变量,然后不久在函数中又重新声明的话,就可能产生逻辑错误。对于JavaScript,只 要你的变量是在同一个作用域中(同一函数),它都被当做是声明的,即使是它在var声明前使用的时候。

myname = "global"; // 全局变量 

function func() {    

    alert(myname); // "undefined"    

    var myname = "local";    

    alert(myname); // "local" 

} 

func();

 

posted on 2015-02-04 16:38  onedayof2010  阅读(123)  评论(0编辑  收藏  举报