在【js函数和变量的声明与执行顺序】https://www.cnblogs.com/highs... 这篇文章中看到一个地方没有理解。
没有理解为什么第3行代码处alert的值为什么是undefined?
我的想法是,预编译期时候,js获取到了声明的var a,这个时候只是声明,并没有赋值。
然后预编译结束。
接下来开始从上往下执行代码:执行第一行 var a=1;,然后再往下执行f()的时候,调用f方法:alert(a), 这个时候不是已经执行过第一行,a已经有值了吗?
还是我绕进了什么我没出来的弯子...?
求指点
狐的传说
相关分类