Christian S.: (JavaScript) Klassen oder Objekt Methoden?

Beitrag lesen

Hi,

Untertopic: JavaScript

ich würde gerne wissen, was die bevorzugte Programmiertechnik ist, wenn man Methoden für z.B. ein DOM-Element bereitstellen will.

Beispielsweise um CSS Klassen hinzuzufügen oder zu entfernen.

Ist es besserer Programmierstil, in dem man dann einfach ein Objekt um das DOM-Element wrappt, und die Methode am Objekt zur Verfügung stellt.

Oder stellt man lieber eine statische Methode zur Verfügung, die das Element entgegen nimmt?

Beispiel:

Es gibt Frameworks die machen es etwa so (z.B. YAHOO):

Namespace.Element.addCssClass(element, cssClass);

Und andere (z.B. prototype)

var elem = new Namespace.Element(element);
elem.addCssClass(cssClass);

Ich glaube das prototype Framwork arbeitet sogar, dass die $ Funktion kein DOM-Element zurück gibt, sondern das prototypejs eigene Element Objekt.
Gibt es dann nicht auch Performance Probleme, wenn man sich jedes DOM-Element, was man sich per $ holen will, erst noch gewrappt wird?

Was ist die "Best Practice"? Letzteres sieht zunächst aus wie das Decorator Design Pattern, aber ist es m.E. nicht, da Element nicht von HTMLElement abgeleitet ist.

Oder ist es Jacke wie Hose? Irgendwie machen es ja auch die "großen" alle unterschiedlich.

Ich würde das gerne wissen, da ich mir etwas ähnliches bauen will, allerdings eben sehr abgespeckt, da ich nur wenige Methoden brauche.

Gruß!