【问题标题】:How to add value to global object from module in Node.js如何从 Node.js 中的模块向全局对象添加值
【发布时间】:2019-04-02 18:16:16
【问题描述】:

我正在尝试为全局或本地对象添加一些值,但没有任何反应。

我尝试创建: global.test = {}; 在 main.js 并在第二个 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 在另一个文件中调用,但整个点显示在上面的代码中。

【问题讨论】:

    标签: javascript node.js object


    【解决方案1】:

    阅读NodeJSdocs

    在浏览器中,顶级作用域是全局作用域。这意味着在浏览器 var 中某些东西将定义一个新的全局变量。在 Node.js 中这是不同的。顶级范围不是全局范围; var 某个 Node.js 模块中的某些内容将是该模块的本地内容。

    似乎您期望 NodeJS 的全局范围与 JS 在浏览器中的工作方式相同,但事实并非如此。

    有关更多信息,请参阅此问题:What is the 'global' object in NodeJS

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-07
      • 2012-02-20
      • 1970-01-01
      • 1970-01-01
      • 2011-01-25
      • 2016-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多