我有这个类定义:
$.note = function() {}
$.note.prototype = {
init: function(note) {
this.note = note;
this.ctrl = document.getElementById(note);
},
// I have these getter functions because I was getting errors using
// myObject.note or myObject.ctrl
getNote: function() {
return this.note;
},
getCtrl: function() {
return this.ctrl;
}
}
我用这个类创建了一个新对象:
var note = new $.note('C');
我可以在我的控制台中访问,如下所示:
但是当我尝试访问note.getNote()时,我得到了未定义的响应:
我是否要错误地访问这些属性?我尝试过使用note.note或note.ctrl,我也得到同样的东西......
答案 0 :(得分:7)
如果你不这样做,那么什么都不会称之为“init”。
$.note = function(note) { this.init(note); }
某些框架提供了一个使用类似构造函数辅助函数的对象系统,但纯JavaScript却没有。
答案 1 :(得分:2)
试试这个:
$.note = function(note) { this.note = note;}
或者你应该调用init函数:
var note = new $.note();
note.init('C');