Das ist genau was prototype.js tut, aber jetzt gilt als extrem schlechte Praxis. Es ist viel besser, Wrapper/Handler zu verwenden. Beachten Sie, dass das Erweitern ANY nativer Objekte, insbesondere des Objekts Object
, eine schlechte Übung ist.
lesen:
Whats wrong with extending the DOM
Object.prototype is verboten
Nachtrag:
Während erstreckt native Objekte in kleinen Projekten kann es sicher in Betracht gezogen wird es tatsächlich eine extrem Unsitte worden. Es ist nur marginal weniger schlimm, als den globalen Geltungsbereich mit Funktionen und Variablen zu überschütten. Es treten nicht nur Namenskollisionen, sondern auch Implementierungskollisionen auf. Dies wird umso mehr möglich, je mehr Bibliotheken Sie zusammenstellen.
Die einzige Möglichkeit zur Vermeidung von Kollisionen, Namen, Implementierungen oder anderweitig besteht darin, Ihre Implementierung auf Ihren eigenen Objekten zu halten.
Alles, was gesagt, es ist Ihre perogative zu tun, was Sie wollen, aber ich werde nichts empfehlen, das weithin als reine schlechte Praxis akzeptiert wird. Ich bleibe bei meiner Empfehlung.
Das ist in der Tat ein großartiger Artikel. Ich überprüfe es und melde mich zurück. –
Der Beispielprototyp versteckt das Element nicht. Es ist Toggle – jscripter
warum nur 'HTMLDivElement' warum nicht einen Prototyp zu allen HTML-Elementen hinzufügen? – vsync