JS: local var X global (window) var



在这里研究JS中的全局变量,我开始尝试一下,令我惊讶的是:

var thisVar = "global var";
function showVarLet() {
  var thisVar = "local var";
  console.log("%s   %s", thisVar, window.thisVar);
}
showVarLet();

给我:

local var
undefined

但在浏览器控制台中也是如此,给了我:

local var
global var

那么,这个窗口对象是怎么回事呢?

编辑:

我试图在控制台中检查如果我引用this.thisVar而不是window.thisVar会发生什么,我的假设是我会访问局部变量,但我继续访问全局变量,为什么会这样?

我展示的代码在一个名为 global() 的函数中

那么两个thisVar S 都不是全局的,一个是 global() 函数的局部变量,另一个是 showVarLet() 的局部变量。您无法通过 window. 访问局部变量。

相关内容

  • 没有找到相关文章