Heim  >  Artikel  >  Web-Frontend  >  Konzentrieren Sie sich auf die Erklärung des __proto__-Attributs in JavaScript (grafisches Tutorial)

Konzentrieren Sie sich auf die Erklärung des __proto__-Attributs in JavaScript (grafisches Tutorial)

亚连
亚连Original
2018-05-21 14:55:251664Durchsuche

In diesem Artikel wird hauptsächlich das __proto__-Attribut in JavaScript vorgestellt. Es verweist auf den Prototyp des Objekts.

JavaScript ist objektorientiert Sprache bedeutet, dass alles ein Objekt ist.

Wie generiert man also Objekte? In der Java-Welt werden Objekte durch Klassen instanziiert. Laienhaft ausgedrückt werden Dinge in eine Form abstrahiert, und diese Form (Klasse) wird verwendet, um bestimmte physische Objekte (Objekte) zu erzeugen.

Aber es gibt in JS kein Klassenkonzept. Es gibt „Prototypen“ und Objekte werden von Prototypen abgeleitet. Laienhaft ausgedrückt ist ein „Prototyp“ in der Welt von JS keine Form, sondern ein spezifisches physisches Objekt (Objekt). Alle Objekte sind von einem anderen Objekt abgeleitet, und dieses abgeleitete Objekt ist das sogenannte „Prototypobjekt“.

Es gibt drei Arten von Objekten in JavaScript: 1. Vom Benutzer erstellte Objekte, 2. Konstruktorobjekte, 3. Prototypobjekte

  • Vom Benutzer erstellte Objekte werden im Allgemeinen verwendet neu Eine Methode zur expliziten Konstruktion von Anweisungen.

  • Konstruktorobjekt, gewöhnlicher Konstruktor, dh eine Funktion, die durch einen neuen Aufruf gewöhnliche Objekte generiert

  • Prototypobjekt, Konstruktorprototypattribut Das Objekt darauf hingewiesen.

Jedes dieser drei Objekte hat ein Attribut – das Attribut __proto__, das auf den Prototyp des Objekts verweist. Die Durchquerung von jedem Objekt kann auf Object.prototype zurückgeführt werden.

Der Konstruktor verfügt über ein Prototypobjekt, das auf ein Prototypobjekt zeigt. Wenn ein Objekt über den Konstruktor erstellt wird, verweist das __proto__-Attribut des erstellten Objekts auf das Prototypattribut des Konstruktors.

Das Prototypobjekt verfügt über ein Konstruktorattribut, das auf den entsprechenden Konstruktor verweist.

Reden ist billig, zeigen Sie mir den Code!

Es wird auf jeden Fall vorkommen, dass dieses __proto__-Objekt auch ein __proto__-Objekt hat. Wie wir gerade gesagt haben, hat jedes Objekt eine __proto__-A-Eigenschaft, die auf sein Prototypobjekt verweist. Drucken wir das __proto__ in diesem __proto__ aus: 2016510171046523.png (154×46)

var obj = {};
console.log(obj);

Das Ergebnis ist null, was anzeigt, dass das Prototypobjekt der obersten Ebene erreicht wurde. obj wird mit geschweiften Klammern {} definiert, und das Prototypobjekt von obj ist natürlich das Objekt der obersten Ebene von JS. 2016510171106039.png (331×351)

Schauen wir uns ein Ende des Codes an, um unser Verständnis zu verbessern:

console.log(obj.__proto__.__proto__); //--> null

subChild.__proto__ --> child

child.__proto__ -->parent2016510171136445.png (176×141)

  • parent.__proto__ --> Prototypobjekt der obersten Ebene

  • Das Obige habe ich für Sie zusammengestellt. Ich hoffe, es wird Ihnen hilfreich sein die Zukunft.

  • Verwandte Artikel:


Umfassende Analyse von Prototypen in JavaScript

Kompositionsmuster in Entwurfsmustern in JavaScript-Programmen Verwendung im Bauwesen (fortgeschritten)

Analyse verschiedener Modi zum Erstellen von Objekten in JavaScript (grafisches Tutorial)


Das obige ist der detaillierte Inhalt vonKonzentrieren Sie sich auf die Erklärung des __proto__-Attributs in JavaScript (grafisches Tutorial). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn