TypeScript-də İnterfeysin Opsional Xüsusiyyətləri

İnterfeysdə həmçinin xüsusi opsional (məcburi olmayan) xüsusiyyətlər təyin etmək olar. Onlar obyekti müəyyən bir xüsusiyyət dəsti ilə məhdudlaşdırmamaq üçün lazımdır. Eyni zamanda interfeysə daxil olmayan xüsusiyyətlərin istifadəsi qadağandır. Opsional xüsusiyyətlər, adından sonra qoyulan ? operatoru vasitəsilə təyin olunur.

Gəlin, bütün fiqur-obyektləri üçün xüsusiyyətlər təyin edən IFigure interfeysi yaradaq. color-ın opsional xüsusiyyət olmasına icazə verək:

typescriptinterface IFigure {
  height: number;
  width: number;
  color?: string;
}

İndi rectangle obyekti yaradaq və onun rənginin dəyərini konsola çıxaraq:

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

console.log(rectangle.color); // 'red'

İndi isə obyektdə rəngi təyin etməsək, xəta baş verəcəyini yoxlayaq:

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

console.log(rectangle.color);

Xəta baş verməyəcək və konsolda sadəcə rəngin müəyyən edilmədiyi haqqında mesaj çıxacaq:

typescriptundefined
Задание 1

Tarixi saxlayan obyekt üçün IDate interfeysi hazırlayın: il, ay və gün. Bütün xüsusiyyətlərin məcburi olmadığını təyin edin.