Розуміння оцінювачів у TypeScript
Оцінювач — це об’єкт, який можна використовувати для оцінки вартості властивості або набору властивостей. Іншими словами, це об’єкт, який знає, як обчислити значення чогось.
У TypeScript оцінювач використовується для визначення типу властивості або набору властивостей. Він використовується в поєднанні з ключовим словом `type` для визначення типу властивості або набору властивостей.
Ось приклад:
```
interface Особа {
name: string;
age: number;
}
class Employee extends Person {
salary: number;
}
function getEmployee(employee: Employee): Працівник {
return employee; // повертає екземпляр Employee
}
let person: Person = { name: "John", age: 30 };
let Employee: Employee = getEmployee(person);
console.log(employee.salary); // друкує 0
```
У цьому прикладі інтерфейс `Person` має дві властивості: `name` і `age`. Клас `Employee` розширює інтерфейс `Person` і додає нову властивість під назвою `salary`. Функція `getEmployee` приймає екземпляр `Employee` як аргумент і повертає екземпляр `Employee`.
Ключове слово `valuator` використовується для визначення типу властивості `salary` в класі `Employee`. У цьому випадку типом властивості `salary` є `number`.
Без ключового слова `valuator` тип властивості `salary` буде вважатися `any`, що означає, що це може бути будь-який тип значення. Використовуючи ключове слово `valuator`, ми можемо явно вказати тип властивості та гарантувати, що це завжди число.
Підсумовуючи, Valuator — це об’єкт, який знає, як обчислити тип властивості або набору властивостей. Він використовується в поєднанні з ключовим словом `type` для визначення типу властивості або набору властивостей у TypeScript.