Egenskaper för gränssnitt i TypeScript

Låt oss säga att vi har ett gränssnitt som beskriver en användare:

typescriptinterface IUser {
  
}

Låt oss lägga till egenskaper och deras typer i detta gränssnitt:

typescriptinterface IUser {
  name: string;
  age: number;
}

Nu skapar vi ett objekt av gränssnittet. För att göra detta deklarerar vi en variabel där vi anger den valda gränssnittstypen som typ:

typescriptlet user: IUser;

Nu kan vi skriva in värden för de egenskaper som definierats i gränssnittet:

typescriptlet user: IUser = {
  name: 'john',
  age: 30
}

Om vi nu försöker skapa en användare utan att tilldela den nödvändiga egenskaper kommer vi att se ett fel:

typescriptlet user: IUser = {
  name: 'john',  // fel
}

Ett fel kommer också upp om man försöker lägga till en extra egenskap:

typescriptlet user: IUser = {
  name: 'john',
  surn: 'smit', // fel
  age: 30
}
Задание 1

Skapa ett gränssnitt IMath med egenskaperna num1 och num2.

Задание 2

Implementera ett objekt calc av gränssnittet som skapats ovan.