JavaScript有“预解析”的特性,理解预解析是很重要的,不然在实际开发中可能会遇到很多无法解析的问题,甚至导致程序bug的存在。
#js预解析执行过程:
预解析:(全局作用域)
先找到var、function和参数
找到var和function之后,会把var和function提前
解析一行执行一行
执行到fun后,进入局部作用域
预解析
从上到下一行一行执行代码
#代码实例:
var a = 18; f1(); function f1(){ var b = 9; console.log(a); console.log(b); var a = '123'; }
#求该代码输出结果:
undefined
9
此实例则运用预解析的方法解决!
JavaScript有“预解析”的特性,理解预解析是很重要的,不然在实际开发中可能会遇到很多无法解析的问题,甚至导致程序bug的存在。