Свойства само за четене в интерфейс в TypeScript

Свойствата само за четене се задават само веднъж при създаване на обекта. В бъдеще те не могат да бъдат променяни. За деклариране на тези свойства се използва ключовата дума readonly.

Нека вземем интерфейса IFigure, създаден в предишния урок. Но сега ще зададем на свойството width достъп само за четене:

typescriptinterface IFigure {
  height: number;
  readonly width: number;
}

Нека създадем обект rectangle:

typescriptlet rectangle: IFigure = {
  height: 200,
  width: 300
}

Нека променим височината:

typescriptrectangle.height = 150;

А сега нека променим ширината и ще видим грешка, тъй като ширината е декларирана като непроменяема:

typescriptrectangle.width = 400; // грешка
Задание 1

Създайте интерфейс IUser, в който свойството salary ще бъде достъпно само за четене.