全局var作用域不适用于函数

时间:2019-05-14 02:15:36

标签: javascript

下面的函数输出未定义。

var x = 100;
function test() {
  if(false){
    var x = 130;
  }
  console.log(x);
}

test();

我一直认为,由于IF块内部的语句未执行,因此X应该显示100,因为X值是全局声明的。

如果我注释IF块,则采用全局X值。

有人可以解释这个原因吗?

0 个答案:

没有答案