2013-04-10 37 views
1

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

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将被缓存。但是,每次我调用doSomething(),我想要一个新的对象,因为它在Result中声明没有任何额外的编程(我不想重置属性,每次我做一些事情Result对象 我在这里丢失任何细节?请帮我

回答

2

你可以把一个类:

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); 
+0

非常感谢@robertklep。有效 :) – codejammer 2013-04-10 09:44:48