0
a = 123; // becomes global var

var b = 234; // local var

function f() {} // local func

g = function() {} // got a global func

现在如何打印ag(以及迄今为止的所有其他全局变量),但不是bf(以及目前的其他局部变量)。

console.log(this)// is not working.

编辑:使用“window”变量的建议只能在浏览器中使用,但嵌入式 Javascript 或 Node.js 没有“window”变量。

4

3 回答 3

0

怎么样:

var globals = window || global;
for (var key in globals){
  console.log(window[key]);
}
于 2013-10-10T20:18:23.513 回答
0

所有全局变量都存储在window浏览器中的对象上。或者,它们存储在 Node.js中的globalor对象上。GLOBAL您可以改为枚举该对象的键,但请记住,它包含的内容远远超过用户定义的全局变量。

于 2013-10-10T20:19:14.347 回答
0

全局对象附加到全局对象,在浏览器中就是窗口。

a = 123

是相同的

window.a = 123
于 2013-10-10T20:20:17.337 回答