我们知道在js中, js解析器会在 执行代码之前, 把 变量申明和函数申明 都预读一遍
然后, 有一个疑问来了, 到底是 变量提升 权重高 还是 函数申明提升权重高?
我们可以做个试验:
example1:
var a=20;
function a (){
console.log(10);
}
console.log(a); //输出的值是20
example2:
function a (){
console.log(10);
}
var a =20 ;
console.log(a); // 输出的值是20
由此可见, 不管 函数申明是在 变量申明之前还是之后, 退回被变量申明所覆盖, 因此 变量声明的权重比例更高