Siechfred: Objekt Eigenschaft bei Vererbung

Beitrag lesen

Tag Andreas.

Der Unterschied ist, daß Du mit KIND.Alter dem KIND-Objekt eine neue Eigenschaft zuweist - sie ist NICHT mehr die aus dem Elternelement.

Doch, durch "KIND.prototype = new ELTERN" wird das ELTERN-Objekt mit all seinen Eigenschaften auf das KIND-Objekt vererbt. Somit hat das KIND-Objekt automatisch die Eigenschaften (ELTERN.)Objekte und (ELTERN.)Alter. Welche Werte diese Eigenschaften haben ist hier erstmal von untergeordneter Bedeutung.

Mit KIND.Objekte[0] geht das nicht, weil KIND.Objekte nicht existiert, deswegen sieht JS im prototype-Objekt nach, ob es dort eine Eigenschaft Objekte gibt.

Und wird dort fündig.

Sieh Dir mal die JS-Fehlermeldungen an.

Wie meinst du das? Es gibt in der JS-Konsole keinerlei Fehlermeldungen, Warnungen oder Hinweise.

Du kannst z.B. sehr wohl KIND.Objekte = "dreirad" zuweisen. Aber das ist eine _neue_ Eigenschaft von KIND, nicht von ELTERN.

Nein, es ist ein neuer Wert für die Eigenschaft Objekte, die das KIND-Objekt vom ELTERN-Objekt geerbt hat. Das Problem ist hier m.E. tatsächlich das anonyme Array. Ein typeof Kind1.Objekte ergibt "Object", nämlich ein (anonymes) Array-Objekt, erzeugt durch die Anweisung '["leer"]', macht man diese Klammern weg, ergibt eine Typenabfrage für die Eigenschaft Objekte den Typ "String". Was erreicht werden soll, ist wohl, dass KIND.Objekte ein individuelles Array-Objekt werden soll, und das erreicht man m.E. nur über den von mir in https://forum.selfhtml.org/?t=97151&m=591906 vorgeschlagenen Weg.

[dsf 3.6]
Siechfred

--
»Sie kochten heimlich mit Wasser und tranken öffentlich Wein.«