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还是让它实现各种接口?