var a = 1;function b(){ alert(a); var a = 2; alert(a);}结果是 undefined 和 2 ,为什么不是1和2呢?因为 js编译的时候 会把变量提前声明也就是说 第一个alert(a)之前 会有一个隐式的声明 var a; 因为没有定义所以是 undefined。这个问题经典不? 每次笔试都有这个题 ,好像你不会就是垃圾一样。 其实真正写代码的时候 谁会这么命名? 局部变量加下划线 多么简单的道理。。非得上纲上线 烦死!
js解析原理
最新推荐文章于 2024-01-18 09:28:13 发布