组织对象原型的更好方法是什么?

时间:2012-06-10 07:36:29

标签: javascript

这是我尝试组织原型的方式:

但是我必须编写一个额外的“方法”属性来访问原型的功能是相当低效的。

var Gallery = function(name) {
    this.name = name;
}

Gallery.prototype.methods = {
    activeCnt: 0,
    inc: function() {
        this.activeCnt++;
    },
    dec: function() {
        this.activeCnt--;
    },
    talk: function() {
        alert(this.activeCnt);
    }
}


var artGallery = new Gallery('art');
var carGallery = new Gallery('car');
artGallery.methods.inc();
artGallery.methods.talk();
carGallery.methods.talk();​

1 个答案:

答案 0 :(得分:2)

只需删除methods属性,然后将新对象分配给prototype的{​​{1}}对象。还要确保它有一个名为Gallery的属性,该属性指向constructor。这是代码:

Gallery