Node.js模块与对象

时间:2011-02-18 10:50:18

标签: javascript node.js

我一直在使用node.js,并且来自Java背景,我正在努力区分模块和JavaScript中对象的典型概念。

在实施模块时,我目前正在这样做:

// someModule.js
var privateVariable;
this.sampleFunction = function() {
   // ...
}

现在,我在其他地方使用此模块的方式是:

var moduleName = require('./someModule');

var foo = moduleName.sampleFunction();

我不知道这是否是在node.js中进行模块化开发的正确方法 - 因为我意识到我实际上并没有使用对象,比如使用new() - 当我想要的时候我需要这样做如果我想要一个人物对象的集合,那么在这里进行的正确方法是什么 - 我的模块和它的定义将如何?

2 个答案:

答案 0 :(得分:3)

// someModule.js
var privateVariable;
this.Person = function(firstName, lastName) {
   this.firstName = '...';
}

然后:

var moduleName = require('./someModule');

var foo = new moduleName.Person('foo', 'bar');

答案 1 :(得分:1)

模块是一个名称空间,用于存放大量相关项目。因此,您可能拥有“人员集合”模块,其中包含多种类型的人员集合,例如“阵容”,“桩”和“垃圾箱”

根据您使用的是oo还是函数式写作,实际代码看起来会有所不同。