1

如何在 node.js 中创建可重复使用的空白对象?例如 : 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会被缓存。但是,每次我调用 doSomething() 时,我都想要一个新的对象,因为它是在Result没有任何额外编程的情况下声明的(我不想每次对Result对象做一些事情时都重置属性。我在这里遗漏了任何小细节吗?请帮帮我

4

1 回答 1

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);
于 2013-04-10T09:16:19.440 回答