我有一个看起来像这样的模块:
module.exports = {
property1: {},
property2: {},
fucnct1: function(one, two){
this.property1 = one;
this.property2 = two;
}
}
然后我执行以下操作
var myModule = require("./myModule.js");
var api = {
handleRequest: function(req, res){
// someValue1 and someValue2 are different for each request
myModule.funct1(someValue1, someValue2)
}
};
// Handle the http request.
handleRequest = function(req, res){
var apiInst = Object.create(api);
apiInst.handleRequest(req, res);
};
// Start the server
var server = http.createServer(handleRequest);
server.listen(port, function(){
console.log("Listening on port " + port || "Could not start server");
});
当 2 个或更多人同时访问服务器时,他们是否在模块内共享这些属性(myModule.property1
和 myModule.property2
),还是每个用户的属性都是唯一的?
我是否应该为每个用户创建此模块的实例?
最佳答案
是的,这两个属性是共享的。您无法真正创建模块的实例,但您可以导出一个对象并创建该对象的实例。
关于javascript - 我是否应该创建模块实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30339013/