TypeScript · Junior · Запитання 8 з 75
Що робить модифікатор readonly у { readonly id: number }?
- ✓Правильна відповідь: Забороняє перепризначення властивості на рівні типів, у рантаймі нічого не змінює
- 2Робить об'єкт глибоко незмінним через
Object.freezeу рантаймі - 3Робить властивість приватною й недоступною ззовні класу
Пояснення
readonly - лише перевірка компілятора: obj.id = 2 спричинить помилку. Він неглибокий - вкладені об'єкти можна змінювати. У рантаймі об'єкт звичайний. Для масивів є readonly string[] / ReadonlyArray<string>, а глибоке заморожування роблять через as const або Object.freeze.