我一直在使用node.js,并且来自Java背景,我正在努力区分模块和JavaScript中对象的典型概念。
在实施模块时,我目前正在这样做:
// someModule.js
var privateVariable;
this.sampleFunction = function() {
// ...
}
现在,我在其他地方使用此模块的方式是:
var moduleName = require('./someModule');
var foo = moduleName.sampleFunction();
我不知道这是否是在node.js中进行模块化开发的正确方法 - 因为我意识到我实际上并没有使用对象,比如使用new() - 当我想要的时候我需要这样做如果我想要一个人物对象的集合,那么在这里进行的正确方法是什么 - 我的模块和它的定义将如何?
答案 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还是函数式写作,实际代码看起来会有所不同。