1. Verwendung von instanceof Mit Funktion Person() {} Funktion Person2() {} const usr = neue Person(); console.log(usr-Instanz von Person); // wahr console.log(usr-Instanz von Objekt); // wahr console.log(usr-Instanz von Person2); // falsch Wie im obigen Code gezeigt, werden zwei Konstruktoren, Verwenden Sie Natürlich zeigen die Ergebnisse, dass sich 2. Implementierung von instanceof Nachdem Sie die Funktion und das Prinzip von Funktion myInstanceof(Objekt, Konstruktor) { // impliziter Prototyp von obj let implicitPrototype = obj?.__proto__; // Konstruktor-Prototyp const displayPrototype = constructor.prototype; // Durchlaufe die Prototypenkette, während (implicitPrototype) { // Gefunden, returniere true wenn (implicitPrototype === displayPrototype) true zurückgibt; implicitPrototype = implicitPrototype.__proto__; } // Die Durchquerung ist beendet und noch nichts gefunden, returniere false gibt false zurück; }
Holen Sie sich zuerst den impliziten Prototyp des Instanzobjekts: Anschließend können Sie fortfahren, den impliziten Prototyp der vorherigen Ebene abzurufen: implicitPrototype = implicitPrototype.__proto__; Um die Prototypenkette zu durchlaufen, müssen Sie herausfinden, ob sich Wenn
3. Überprüfung Schreiben Sie ein einfaches Beispiel, um Ihre Implementierung von Funktion Person() {} Funktion Person2() {} const usr = neue Person(); Funktion myInstanceof(Objekt, Konstruktor) { let implicitPrototype = obj?.__proto__; const displayPrototype = Konstruktor.Prototype; während (impliziter Prototyp) { wenn (implicitPrototype === displayPrototype) true zurückgibt; implicitPrototype = implicitPrototype.__proto__; } gibt false zurück; } meineInstanceof(usr, Person); // wahr meineInstanzvon(usr, Objekt); // wahr meineInstanzvon(usr, Person2); // falsch meineInstancevon(usr, Funktion); // falsch myInstanceof(usr.__proto__, Person); // falsch usr.__proto__instanceof Person; // falsch Wie Sie sehen, erzeugt Interessanterweise gibt Häufige handgeschriebene JavaScript-Codes: „GitHub – Code-js“ Dies ist das Ende dieses Artikels über die manuelle Implementierung von instanceof in JavaScript. Weitere relevante JavaScript-Instanceof-Inhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: Tiefes Verständnis von Zeilenhöhe und vertikaler Ausrichtung
Anpassen von Bildern mit Dockerfile Unter Bildanp...
Vorwort MRR ist die Abkürzung für Multi-Range Rea...
Der MySQL-Server läuft mit der Option --skip-gran...
Heute habe ich auf der Blog-Site shoptalkshow ges...
Inhaltsverzeichnis Projekthintergrund Verbesserun...
In diesem Artikel werden hauptsächlich die Proble...
Super ausführliches Tutorial zur Installation und...
1. MySQL entfernen a. sudo apt-get autoremove --p...
Inhaltsverzeichnis DOM Knoten Elementknoten: Text...
Freunde, die über Grundkenntnisse in SQL verfügen...
Inhaltsverzeichnis Gängige Komprimierungsformate:...
Inhaltsverzeichnis Vorwort Was sind dynamische Ei...
Inhaltsverzeichnis Überblick Beispiel 1) Objekt e...
Der gesamte Inhalt dieses Blogs ist unter Creativ...
<br />Ursprüngliche Adresse: http://andymao....