Javascript node.js与window[";myvar";]=value的等价物是什么?

Javascript node.js与window[";myvar";]=value的等价物是什么?,javascript,node.js,Javascript,Node.js,node.js与window[“myvar”]=value的等价物是什么?要设置全局变量,请使用global而不是window global["myvar"] = value @Dokkat:window和global只是在各自的环境中对全局对象的引用。因此,在每个环境中都以相同的方式使用它们。我更新了我的答案,以明确显示代码。但是,请注意,使用节点的global应该尽量少用。如果有其他方法在模块之间共享数据,请改用它。特别是,如果您发现自己需要使用群集或其他方式在处理器之间分发应用程序,那么

node.js与
window[“myvar”]=value
的等价物是什么?

要设置全局变量,请使用
global
而不是
window

global["myvar"] = value

@Dokkat:
window
global
只是在各自的环境中对全局对象的引用。因此,在每个环境中都以相同的方式使用它们。我更新了我的答案,以明确显示代码。但是,请注意,使用节点的
global
应该尽量少用。如果有其他方法在模块之间共享数据,请改用它。特别是,如果您发现自己需要使用群集或其他方式在处理器之间分发应用程序,那么使用
global
将会失败,因为它不会在子进程之间共享。不起作用<代码>变量foo=42;console.log(global.foo)//返回未定义的…@spex:它在节点和浏览器中的工作方式相同。在这两种情况下,如果在全局环境中执行
var foo=42
,则可以将
foo
作为全局对象的属性进行访问,该对象在浏览器中为
窗口
,在NodeJS中为
全局
。但是,如果您在模块中执行
var foo=42
,则您不在全局环境中;你在一个函数里面。不管怎样,问题不是使用
var
创建变量;这是关于如何直接在全局对象上创建一个属性的。@斜视我理解,不是分享我自己的困惑,而是解释为什么@Matrix会困惑。在他的具体案例中,他没有将
窗口
全局
视为等价物,因此说它们完全不等价。