Pasirinktinės sąsajos savybės TypeScript'e
Sąsajoje taip pat galima nustatyti ypatingas
pasirinktines (neprivalomas) savybes.
Jos reikalingos tam, kad neapriboti
objekto tam tikru savybių rinkiniu. Tuo
pačiu uždraudžiama naudoti savybes,
kurios nepriklauso sąsajai. Pasirinktinės
savybės nustatomos naudojant operatorių ?,
nurodytą po savybės pavadinimo.
Sukurkime sąsają IFigure,
kuri nustato savybes visiems objektams-figūroms.
Tegul color bus pasirinktinė
savybė:
typescriptinterface IFigure {
height: number;
width: number;
color?: string;
}
Dabar sukurkime objektą rectangle ir
atspausdinkime jo spalvos reikšmę konsolėje:
typescriptlet rectangle: IFigure = {
height: 200,
width: 300,
color: 'red'
}
console.log(rectangle.color); // 'red'
O dabar patikrinkime, ar bus klaidos, jei nenustatysime spalvos objekte:
typescriptlet rectangle: IFigure = {
height: 200,
width: 300
}
console.log(rectangle.color);
Klaidos nebus ir konsolėje bus atvaizduotas pranešimas, kad spalva tiesiog nebuvo apibrėžta:
typescriptundefined
Sukurkite sąsają IDate objektui,
kuris saugo datą: metus, mėnesį ir dieną. Tegul
visos objekto savybės bus neprivalomos.