TypeScript · Junior · Pytanie 8 z 75
Co robi modyfikator readonly w { readonly id: number }?
- ✓Poprawna odpowiedź: Zabrania ponownego przypisania właściwości na poziomie typów; w runtime nic się nie zmienia
- 2Czyni obiekt głęboko niezmiennym przez
Object.freezew runtime - 3Czyni właściwość prywatną i niedostępną poza klasą
Wyjaśnienie
readonly to tylko sprawdzenie kompilatora: obj.id = 2 powoduje błąd. Jest płytkie - zagnieżdżone obiekty można zmieniać. W runtime obiekt jest zwyczajny. Dla tablic jest readonly string[] / ReadonlyArray<string>, a głębokie zamrożenie robi się przez as const lub Object.freeze.