版权声明:内容多为自言自语,请自行判断有无价值。 https://blog.csdn.net/weixin_41702247/article/details/81538280
1.函数内外有重名的变量时,局部变量会覆盖全局变量,原因是函数域优先于全局域
2.当js执行进入函数时,函数内部声明过的所有变量会被提到最前,但同时对变量的赋值等操作不会被提升
例:
var a=123;
function test(){
alert(a); //undefined
var a=1;
alert(a); //1
}
test();
故:最好在函数的最上面声明所有会用到的变量。