如何在Javascript中正确访问类属性

时间:2013-12-21 16:13:02

标签: javascript jquery object

我有这个类定义:

$.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

但是当我尝试访问note.getNote()时,我得到了未定义的响应: enter image description here

我是否要错误地访问这些属性?我尝试过使用note.note或note.ctrl,我也得到同样的东西......

2 个答案:

答案 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');