Свойства только для чтения в интерфейсе в TypeScript
Свойства только для чтения задаются только
один раз при создании объекта. В дальнейшем
изменить их нельзя. Для объявления данных
свойств используется ключевое слово readonly
.
Возьмем интерфейс IFigure
, созданный
в предыдущем уроке. Но теперь зададим
свойству width
доступ только для
чтения:
interface IFigure {
height: number;
readonly width: number;
}
Давайте создадим объект rectangle
:
let rectangle: IFigure = {
height: 200,
width: 300
}
Изменим высоту:
rectangle.height = 150;
А теперь изменим ширину и увидим ошибку, так ширина объявлена неизменяемой:
rectangle.width = 400; // ошибка
Создайте интерфейс IUser
, в котором
свойство salary
будет доступным
только для чтения.