alert(a);
a();
var a=3;
function a(){
alert(10);
}
alert(a);
a=6;
a();
sf上翻文章,看到这道题,先答题后coding验证,第三个alert答错了。。。
然后又拆成
var a=3;
function a(){
console.log(10);
}
console.log(a);
a();
网上查了查,原来是解析的时候,函数声明和变量声明都会置顶,但是变量声明位于函数声明之后。所以这里就是var a的声明会覆盖函数的声明。
相当于
function a(){
console.log(10)
}
var a;
console.log(a);
a();
a = 3;
js中函数与变量名重名
最新推荐文章于 2024-04-14 12:40:42 发布