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)
「この」値を回避する方法を知っている人はいますか?