Sifa Za Hiari Za Interface Katika TypeScript

Katika interface pia inawezekana kuweka sifa maalum za hiari (sio lazima). Zinahitajika ili kuepuka kumlazimisha kitu kuwa na seti maalum ya sifa. Wakati huo huo matumizi ya sifa ambazo hazimo katika interface yanakatazwa. Sifa za hiari zinawekwa kwa kutumia kiendeshazi ?, ikionyeshwa baada ya jina la sifa.

Wacha tuunde interface IFigure, ambayo inabainisha sifa za vitu vyote maumbo. Wacha color iwe sifa ya hiari:

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

Sasa tuunde kitu rectangle na tuonyeshe thamani ya rangi yake kwenye koni:

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

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

Sasa tuangalie kama kutakuwapo na hitilafu, ikiwa hatutaweka rangi kwenye kitu:

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

console.log(rectangle.color);

Haitakuwa na hitilafu na kwenye koni itaonyeshwa ujumbe kwamba rangi haijaainishwa:

typescriptundefined
Задание 1

Tengeneza interface IDate kwa kitu, kinachohifadhi tarehe: mwaka, mwezi na siku. Wacha sifa zote za kitu ziwe za hiari.