Opcijske lastnosti vmesnika v TypeScript
V vmesniku je mogoče nastaviti tudi posebne
opcijske (neobvezne) lastnosti.
Potrebne so zato, da ne omejujemo
objekta na določen niz lastnosti. Pri
tem je prepovedana uporaba lastnosti,
ki niso del vmesnika. Opcijske
lastnosti se nastavijo z uporabo operatorja ?,
ki je naveden za imenom lastnosti.
Ustvarimo vmesnik IFigure,
ki določa lastnosti vsem objektom-oblikam.
Naj bo color opcijska
lastnost:
interface IFigure {
height: number;
width: number;
color?: string;
}
Zdaj ustvarimo objekt rectangle in
izpišimo vrednost njegove barve v konzolo:
let rectangle: IFigure = {
height: 200,
width: 300,
color: 'red'
}
console.log(rectangle.color); // 'red'
Zdaj pa preverimo, ali bo prišlo do napake, če barve ne nastavimo v objektu:
let rectangle: IFigure = {
height: 200,
width: 300
}
console.log(rectangle.color);
Napake ne bo in v konzolo bo izpisano sporočilo, da barva preprosto ni določena:
undefined
Naredite vmesnik IDate za objekt,
ki shranjuje datum: leto, mesec in dan. Naj bodo
vse lastnosti objekta neobvezne.