TypeScript · Junior · Frage 8 von 75
Was macht der Modifikator readonly in { readonly id: number }?
- 1Macht das Objekt zur Laufzeit per
Object.freezetief unveränderlich - 2Verbietet die Neuzuweisung der Eigenschaft auf Typebene; zur Laufzeit ändert sich nichts
- 3Macht die Eigenschaft privat und außerhalb der Klasse unerreichbar
Antwort zeigen
Richtige Antwort: Verbietet die Neuzuweisung der Eigenschaft auf Typebene; zur Laufzeit ändert sich nichts
Erklärung
readonly ist nur eine Prüfung des Compilers: obj.id = 2 erzeugt einen Fehler. Es ist flach - verschachtelte Objekte lassen sich ändern. Zur Laufzeit ist das Objekt gewöhnlich. Für Arrays gibt es readonly string[] / ReadonlyArray<string>, tief einfrieren macht man mit as const oder Object.freeze.