请看以下代码:spa
console.log(a); var a = 2;
输入结果会是什么? 请说出理由code
可能会有三种答案:blog
一、2编译器
二、抛出ReferenceError异常console
三、undifined编译
对于编译器来讲 var a = 2; 这一条语句实际上是两条 :class
var a; 和 a = 2;程序
在编译过程当中会先执行全部的声明,包括 var a;异常
当程序执行到第二行时再执行的 a = 2; di
因此输入的结果应该是undifined;