$(document).ready(function () {
var patient = (function (options) {
var age = options.age;
var name = options.name;
function getName() {
return this.name;
}
function setName(val) {
name = val;
}
function getAge() {
return this.age;
}
function setAge(val) {
age = val;
}
return {
getAge: getAge,
setAge: setAge,
getName: getName,
setName: setName
}
})();
});
我意识到我在这里的示例中从未传递任何选项。如果我尝试做类似的事情patient.setAge('100')
然后console.log(patient.getAge())
我得到一个错误说cannot read property Age of undefined
。我试图达到的首要主题是在一个模块中,我如何模拟构造函数来实例化一个新的患者对象,同时保持私有变量和所有爵士乐的所有 OOP 优点。
我在这里看到了一些模块模式中的构造函数示例,但我对它们不太了解。一般来说,在模块中有一个构造函数是一个好主意吗?它的主要目的是否与基于类的语言相似?