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 мулокоти фақат ўқиш учунгина рухсат этилган бўлсин.