组织原型javascript,同时维护对象引用和继承

组织原型javascript,同时维护对象引用和继承

我使用JavaScript原型和继承构建了一个大型应用程序。但是我很难组织我的代码。例如,我有一个类旋转木马,它具有如下许多功能:

Carousel.prototype.next = function () {...}Carousel.prototype.prev = function () {..}Carousel.prototype.bindControls = function () {..}

我想像这样组织我的代码:

Carousel.prototype.controls = {
   next: function () { ... } , 
   prev: function() { ... },
   bindControls: function () { .. }}

但这将导致“这个”的价值丢失。我可以使用全局实例来跟踪它,但是当类被继承时(例如在另一个文件中),这会导致问题,我有这样的东西来覆盖父类。

BigCarousel.prototype.next = function () {...}

我的遗产就是这样完成的:

Function.prototype.inheritsFrom = function (parentClass) {
    if (parentClass.constructor === Function) {
        //Normal Inheritance
        this.prototype              = $.extend(this.prototype , new parentClass);
        this.prototype.constructor  = this;
        this.prototype.parent       = parentClass.prototype;
    }
    else {
        //Pure Virtual Inheritance
        this.prototype = $.extend(this.prototype, parentClass);
        this.prototype.constructor = this;
        this.prototype.parent = parentClass;
    }
    return this;};

所以我可以:

BigCarousel.inheritsFrom(Carousel)

有人知道我该如何处理“这个”价值吗?


杨魅力
浏览 305回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript