node.js是否与浏览器中的window对象等效

时间:2013-11-07 23:54:28

标签: javascript node.js

我的意思是node.js的对象是全局函数方法。在浏览器中像这样:

function myGlobalFunction() {
    console.log(this === window);
}
myGlobalFunction();

=> true

2 个答案:

答案 0 :(得分:38)

节点中最接近的等价物是global。我不确定它是否以所有相同的方式进行翻译,但是如果你打开一个REPL并输入this === global,它将返回true。

以下是关于全局对象的讨论,尽管有些信息可能会被弃用,因为它很旧:'Global' object in node.js

答案 1 :(得分:18)

是的,global变量是Node.js中的全局对象

来自docs

  

global#{Object}全局命名空间对象。在浏览器中,   顶级范围是全球范围。这意味着在浏览器中如果   你在全球范围内var将定义一个全局范围   变量。在Node中,这是不同的。顶级范围不是   全球范围; Node模块内部的var内容将是本地的   模块。