node.js中的对象库存

如何在node.js中创build可重用的空白对象? 例如: In file1 :

 var Result = { error :false, errorReport :[] } exports.Result = Result; 

In file 2 :

 var result = require('../file1'); exports.doSomething = function(){ var output = result.Result; output.error = true; output.errorReport = some_error_array; } 

现在,每次我调用doSomething()时,显然最后的result都会被caching。 但是,每次我调用doSomething(),我想要一个新的对象,因为它是在Result声明,没有任何额外的编程(我不想重置属性,每次我做一些事情与Result对象。我出去了

你可以把它变成一个class级:

 exports.Result = function() { this.error = false; this.errorReport = []; }; // later on: var output = new result.Result(); ... 

或者甚至使其幻想,以便可以传递参数:

 exports.Result = function(error, errorReport) { this.error = error === undefined ? false : error; this.errorReport = errorReport === undefined ? [] : errorReport; }; // later var output = new result.Result(true, some_error_array);