0
JavaScript的實際實現可能會超過kill,但我想編寫一個新的Element
類和一個ElementList
類,以更好地瞭解複合設計模式的工作原理。爲簡單起見假設我有在我的Element
級以下:使用複合設計模式時,如何處理getters?
Element = function(nativeElement) {
this.element = nativeElement;
}
Element.prototype = {
addClass: function(classString) {...},
clone: function(deep) {...},
getHtml: function() {...},
getId: function() {...},
getNativeElement: function() {...},
getStyle: function(style) {...},
hasClass: function(classString) {...},
removeClass: function(classString) {...},
setHtml: function(html) {...},
setId: function(id) {...},
setStyle: function(style, value) {...}
}
我的第一個想法是隻實現,對於複合有意義的方法:
ElementList.prototype = {
addClass: function(classString) {...},
clone: function(deep) {...},
hasClass: function(classString) {...},
removeClass: function(classString) {...},
setHtml: function(html) {...},
setStyle: function(style, value) {...}
}
不過那又怎麼樣接口是否每個類實現?我知道JS沒有接口,但對於練習,讓我們假設它。 ElementList
課程將需要能夠與Element
s或ElementList
s一起使用,對嗎?我如何做到這一點是面向對象/設計模式的方式?我需要重新設計Element還是讓它實現各種接口?