Zurück zu JavaScript

JavaScript

Prototypes

Unter den Klassen liegt das Prototypen-System: Objekte erben direkt von anderen Objekten.

Die Prototypen-Kette

Findet JavaScript eine Eigenschaft nicht am Objekt, sucht es am Prototypen weiter — und an dessen Prototypen.

Diese Kette endet bei Object.prototype und erklärt, warum jedes Objekt toString besitzt.

<prototype><__proto__>
Kette inspizieren
const zahlen = [1, 2, 3];
Object.getPrototypeOf(zahlen) === Array.prototype; // true
// map lebt auf Array.prototype, nicht auf dem Array selbst

Klassen sind Prototypen

class ist im Kern Syntax über diesem System: Methoden landen auf dem Prototypen der Klasse.

Deshalb teilen sich alle Instanzen dieselben Methoden, ohne sie zu kopieren.

<class><Object.create()>

Fortschritt

Markiere die Lektion als abgeschlossen, um XP und Streak zu erhalten.