var Person = function(name) { this.sayHi = function() { return "Hello," + name + "!"; } } exports.Person = Person;
在nodejs我尝试过
var Person = require('modulename').Person('Will');
但这只是给了身份不明.如何在nodejs中需要一个带初始值设定项的类?
var mod = require('modulename'); var somePerson = new mod.Person('Will');
在您的代码中,您直接调用构造函数而没有new,因此这被绑定到全局上下文而不是新的Person对象.由于你没有在函数中返回这个,你得到了未定义的错误.
有关演示,请参阅http://jsfiddle.net/ThiefMaster/UCvC2/.