知识点
1)函数声明会置顶
2)变量声明也会置顶
3)函数声明比变量声明更置顶:(函数在变量上面)
4)变量和赋值语句一起书写,在js引擎解析时,会将其拆成声明和赋值2部分,声明置顶,赋值保留在原来位置
5)声明过的变量不会重复声明
var b='l'
function b(){ console.log(b) }
b()
浏览器报错Uncaught TypeError: b is not a function
浏览器js引擎将代码解析为
function b(){ console.log(b) } var b b="l" b()
解剖代码 function b(){ console.log(b) } var b//声明b -------------------------- var b='l'//变量b='l'覆盖函数b=function b() b()//此处b应该是变量b:"l";而不是函数b() console.log(b)//浏览器显示 l 注意:console应该是window.console.log(),window对象中window可省略
个人理解,如有错误敬请指正
链接地址
https://blog.csdn.net/demo_18/article/details/78493489