Bezkeroon: Speicherplatz von "Methoden" in JavaScript

Beitrag lesen

a1.func === a2.func

gibt true, das stimmt.

aber der Ablauf is ja folgender

mit var a1 = new Obj(); wird ein neues Objekt instanziiert und der prototype von Obj wird mit einer leeren Funktion überschrieben.
bei var a2 = new Obj(); passiert nochmal das gleiche.

Da der prototype aber für a1 und a2 gleich ist gibt das logischerweise auch true aus. Das ändert aber nichts daran, dass 'func' 2x definiert wird. Nur geht halt der Zeiger bei beiden Instanzen auf das gleiche Objekt (Funktion).

Evtl reden wir auch aneinander vorbei - ich sagte man braucht, wenn man das ganze prototyping im Kontruktor machen will, eine Variable, die sicherstellt, dass das ganze nur einmal stattfindet und ned bei jeder Instanziierung von Neuem.

Grüße

Bezkeroon