Konstruktor und Prototyp verstehen
Die Konstruktor-Eigenschaft von Javascript hat keine direkte Bedeutung wirken sich auf den Konstruktor aus, der während der Objekterstellung aufgerufen wird. Es wird lediglich aufgezeichnet, welche Funktion mit dem neuen Operator zum Initialisieren des Objekts verwendet wurde.
Die Prototypeigenschaft spielt dagegen eine entscheidende Rolle bei der Objektsuche. Wenn am Objekt selbst keine Eigenschaft gefunden wird, prüft Javascript .__proto__. Wenn es immer noch nicht gefunden wird, wird es in der Prototypenkette fortgesetzt.
Die Constructor-Eigenschaft
Durch die Einstellung Bar.prototype.constructor = Bar wird das Bar.prototype-Objekt als angezeigt wenn es von Bar und nicht von Foo erstellt würde. Dies wird nicht empfohlen und widerspricht der idiomatischen Verwendung von Javascript.
Fazit
Vermeiden Sie die Verwirrung rund um die Vererbung in Javascript. Konzentrieren Sie sich auf Schnittstellen und Mixins, anstatt zu versuchen, dem prototypbasierten System ein klassisches Vererbungsmodell aufzuzwingen. Die Prüfung auf bestimmte Eigenschaften ist zuverlässiger als die Prüfung von Objekttypen. Die manuelle Zuweisung der Konstruktor-Eigenschaft ist in idiomatischem Javascript nicht üblich.
Das obige ist der detaillierte Inhalt vonWarum ist die Konstruktoreneigenschaft von Javascript nicht so wichtig, wie Sie vielleicht denken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!