js预解析

js代码是有浏览器的js解析器(js引擎)来执行的,js解析器在运行js代码的时候分两步,预解析跟代码执行

预解析:js引擎会把js里边所有的var 跟 function 提升到当前作用域的最前边
代码执行:按照代码书写顺序从上往下执行


预解析分为变量预解析(变量提升)与函数预解析(函数提升)

变量提升 就是把所有的变量声明(var)提升到当前的作用域最前边,不提升赋值操作
函数提升 就是把所有的函数声明提升(function)到当前作用域的最前边,不调用函数

有问题可直接留言,望各位与我都可以成为技术大牛。
原文地址:https://www.cnblogs.com/xhxdd/p/13177706.html