Heim >Web-Frontend >js-Tutorial >Was bedeutet js-Prototyp?
Prototyp ist in JavaScript ein schwer zu verstehendes Konzept. Es gibt viele Attribute im Zusammenhang mit Prototypen. Objekte haben „Prototyp“-Attribute, Funktionsobjekte haben „Prototyp“-Attribute und Prototypobjekte haben „. Konstruktor“-Eigenschaft.
Erste Einführung in Prototypen
In JavaScript ist der Prototyp auch ein Objekt. Durch den Prototyp kann die Eigenschaftsvererbung aller JavaScript-Objekte realisiert werden ein internes Attribut „[[Prototyp]]“, dieses Attribut entspricht dem Prototyp des Objekts.
„[[Prototyp]]“ ist eine interne Eigenschaft des Objekts und kann nicht direkt aufgerufen werden. Um den Prototyp eines Objekts bequem anzuzeigen, stellen Firefox und Chrome den nicht standardmäßigen (nicht von allen Browsern unterstützten) __proto__-Accessor bereit (ECMA hat den Standard-Objektprototyp-Accessor „Object.getPrototype(object)“ eingeführt).
In JavaScript enthält das Prototypobjekt auch ein „Konstruktor“-Attribut, das dem Konstruktor entspricht, der alle Instanzen erstellt, die auf den Prototyp verweisen.
In JavaScript verfügt jede Funktion über ein Prototypattribut Wenn eine Funktion als Konstruktor zum Erstellen einer Instanz verwendet wird, wird der Prototypattributwert dieser Funktion allen Objektinstanzen als Prototyp zugewiesen (dh das Attribut „__proto__“ der Instanz wird festgelegt), dh der Wert von alle Instanzen Der Prototyp bezieht sich auf das Prototypattribut der Funktion. (****`Nur Funktionsobjekte haben dieses Attribut!`****)
Der Neuvorgang ist in drei Schritte unterteilt
var p = new Person('张三',20);
1. var p={}; Initialisieren Sie ein Objekt p.
2. p._proto_=Person.prototype;, setze das __proto__-Attribut des Objekts p auf Person.prototype
3. 20);Rufen Sie den Konstruktor Person auf, um p zu initialisieren.
Das obige ist der detaillierte Inhalt vonWas bedeutet js-Prototyp?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!