JS中变量名和函数名重名

JS中变量名和函数名重名

1
2
3
4
5
var a=100;
function a() {
  console.log(a);
}
a();

1)函数声明会置顶
2)变量声明也会置顶
3)函数声明比变量声明更置顶:(函数在变量上面)
4)变量和赋值语句一起书写,在js引擎解析时,会将其拆成声明和赋值2部分,声明置顶,赋值保留在原来位置
5)声明过的变量不会重复声明