我正在尝试为全局或局部对象添加一些值,但是什么也没发生。
我尝试创建:
main.js中的global.test = {};
并在第二个js中添加值test[name] = value
尝试在second.js中创建var test = {};
并在第二个js中添加值test[name] = value
但是这个例子对我没有帮助。
文件中的代码:
main.js:
global.common = require('./second.js');
global.test = {}
second.js:
module.exports = {
main: function (name, value) {
test[name] = value;
}
};
second.js在另一个文件中调用,但是整个要点显示在上面的代码中。
答案 0 :(得分:0)
读取NodeJS docs:
在浏览器中,顶级范围是全局范围。这意味着在浏览器var中,将定义新的全局变量。在Node.js中,这是不同的。顶级范围不是全局范围; var Node.js模块内部的某些内容对于该模块而言是本地的。
似乎您期望NodeJS的全局范围与JS在浏览器中的工作方式相同,但事实并非如此。
有关更多信息,请参见此问题:What is the 'global' object in NodeJS