预解析
JavaScript代代码 是由浏览器中的JavaScript解析器来执行的 JavaScript解析器在运行JavaScript代码的时候分为两步:预解析和代码执行
- js引擎运行js分为两步 :1.预解析、2.代码执行
- 预解析 :js引擎会把js里面所有的var 还有function 提升到当前作用域的最前面
- 代码执行: 按照代码书写的顺序 从上往下执行
- 预解析分为 变量预解析(变量提升)和函数预解析(函数提升
- 变量提升:就是把所有的变量声明提升到当前作用域最前面 不提升赋值操作
- 函数提升:就是把所有的函数声明提升到当前作用域的最前面 不调用函数