由变量提升谈谈 JavaScript Execution Context

JavaScript不同于其他语言,存在变量提升,如下面代码例子: console.log(x) var x = 'hello world'; 这段代码不会报错,会输出 undefined。这就是所谓的变量提升,但具体细节JS引擎是怎么处理的,还需要理解JS的