Node.js module.exports中导出的​​函数和变量在哪里?

时间:2014-12-23 17:38:25

标签: javascript node.js

解决Node.js中模块之间的循环引用问题的一种方法是在需要其他模块之前导出对象。

例如:

var MyModule = {};
module.exports = MyModule;

var req1 = require("req1.js");
var req2 = require("req2.js");
...

module.exports.MyFunction = function(...) { ... };
module.exports.MyVariable = 22;
...

MyFunctionMyVariable存储在哪里?它在MyModule对象中吗?

我问这个问题的原因是我想知道我是否可以简化我的代码。我可以用以下代码安全地替换我的代码吗?

var MyModule = {};
module.exports = MyModule;

var req1 = require("req1.js");
var req2 = require("req2.js");
...

MyModule.MyFunction = function(...) { ... };
MyModule.MyVariable = 22;
...

1 个答案:

答案 0 :(得分:0)

是的,这两个代码段在功能上是等效的。