TypeScript'te Arayüzde İsteğe Bağlı Özellikler

Bir arayüzde özel, isteğe bağlı (opsiyonel) özellikler de tanımlanabilir. Bunlar, bir nesneyi belirli bir özellik kümesiyle sınırlamamak için gereklidir. Bu durumda, arayüze dahil olmayan özelliklerin kullanımı yasaktır. İsteğe bağlı özellikler, özellik adından sonra belirtilen ? operatörü kullanılarak tanımlanır.

Şimdi, tüm şekil nesneleri için özellikleri tanımlayan IFigure arayüzünü oluşturalım. color özelliğinin isteğe bağlı olmasına izin verelim:

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

Şimdi bir rectangle (dikdörtgen) nesnesi oluşturalım ve renginin değerini konsola yazdıralım:

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

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

Şimdi, nesnede renk belirtilmezse hata olup olmayacağını kontrol edelim:

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

console.log(rectangle.color);

Hata olmayacak ve konsola rengin basitçe tanımsız olduğuna dair bir mesaj yazdırılacak:

typescriptundefined
Задание 1

Tarihi saklayan bir nesne için IDate arayüzünü yapın: yıl, ay ve gün. Nesnenin tüm özellikleri isteğe bağlı olsun.