Voliteľné vlastnosti rozhrania v TypeScript
V rozhraní je možné definovať špeciálne
voliteľné vlastnosti.
Sú potrebné na to, aby neobmedzovali
objekt na konkrétnu množinu vlastností. Pri
tom je zakázané používanie vlastností,
ktoré nie sú súčasťou rozhrania. Voliteľné
vlastnosti sa definujú pomocou operátora ?,
uvedeného za menom vlastnosti.
Vytvorme rozhranie IFigure,
ktoré definuje vlastnosti pre všetky objekty-figúry.
Nech color je voliteľnou
vlastnosťou:
interface IFigure {
height: number;
width: number;
color?: string;
}
Teraz vytvorme objekt rectangle a
vypíšme hodnotu jeho farby do konzoly:
let rectangle: IFigure = {
height: 200,
width: 300,
color: 'red'
}
console.log(rectangle.color); // 'red'
A teraz skontrolujme, či nastane chyba, ak nešpecifikujeme farbu v objekte:
let rectangle: IFigure = {
height: 200,
width: 300
}
console.log(rectangle.color);
Nastane chyba a v konzole sa vypíše správa, že farba nie je definovaná:
undefined
Vytvorte rozhranie IDate pre objekt,
ktorý ukladá dátum: rok, mesiac a deň. Nech
všetky vlastnosti objektu sú voliteľné.