Konstruktorfunktionen wie Array bieten eine Vielzahl von Methoden und Eigenschaften, die Sie verwenden können. Haben Sie sich jemals gewünscht, dass eines dieser Objekte eine Methode anbietet, die nicht eingebaut ist? Gibt es eine Möglichkeit, dies selbst zu tun? Absolut! Mal sehen wie.
Dieser kleine Ausschnitt nutzt die "reverse" -Methode des Array-Objekts und wendet seine Funktionalität auf eine gegebene Zeichenfolge an. In der Tat wird so etwas wie "Hallo" in "olleh" umgewandelt und kann mit "myString.reverse ()" aufgerufen werden..
String.prototype.reverse = function () return Array.prototype.reverse.apply (this.split (")). Join ("); ; var myString = 'hallo'; console.log (myString.reverse ());
Nun, da wir ein grundlegendes Verständnis für das Erweitern von Objekten haben, können Sie herausfinden, wie Sie eine benutzerdefinierte "enthält" -Methode für das String-Objekt schreiben können? Mit der jQuery-Bibliothek können wir beispielsweise Folgendes schreiben:
$ ("div: contains ('John')"). css ('fontWeight', 'fett');
Das obige Snippet durchsucht alle Divs auf der Seite und filtert dann den umschlossenen Satz nur auf diejenigen, die die Zeichenfolge "John" enthalten. Wie können wir das String-Objekt mit rohem JavaScript erweitern, um dies zu ermöglichen? Hinterlassen Sie Ihre Lösung in den Kommentaren und wir werden besprechen!