ინტერფეისების თვისებები TypeScript-ში

დავუშვათ, გვაქვს ინტერფეისი, რომელიც აღწერს მომხმარებელს:

typescriptinterface IUser {
  
}

მოდით დავამატოთ ამ ინტერფეისში თვისებები და მათი ტიპი:

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

ახლა ვქმნით ინტერფეისის ობიექტს. ამისთვის ვაცხადებთ ცვლადს, რომელშიც მივუთითებთ ტიპად არჩეულ ინტერფეისს:

typescriptlet user: IUser;

ახლა ჩვენ შეგვიძლია მივუთითოთ მნიშვნელობები ინტერფეისში განსაზღვრული თვისებებისთვის:

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

თუ ახლა ვეცდებით შევქმნათ მომხმარებელი, მას შემდეგ რაც არ დავუმთითებთ საჭირო თვისებებს, დავინახავთ შეცდომას:

typescriptlet user: IUser = {
  name: 'john',  // შეცდომა
}

შეცდომა ასევე იქნება, თუ ვეცდებით გავაკეთოთ დამატებითი თვისება:

typescriptlet user: IUser = {
  name: 'john',
  surn: 'smit', // შეცდომა
  age: 30
}
Задание 1

შექმენით ინტერფეისი IMath თვისებებით num1 და num2.

Задание 2

რეალიზება გაუკეთეთ ობიექტს calc ზემოთ შექმნილი ინტერფეისის.