Middle+
Ce este un type guard?
sobes.tech AI
Răspuns de la AI
Type guard — este un mecanism în TypeScript care permite clarificarea tipului unei variabile într-un anumit bloc de cod, astfel încât compilatorul să poată lucra în siguranță cu acel tip. Type guard — este o funcție sau o expresie care verifică dacă un obiect corespunde unui anumit tip.
Exemplu de type guard folosind o funcție personalizată:
interface Pisică {
meow(): void;
}
interface Câine {
bark(): void;
}
function isPisică(animal: Pisică | Câine): animal is Pisică {
return (animal as Pisică).meow !== undefined;
}
function vorbește(animal: Pisică | Câine) {
if (isPisică(animal)) {
animal.meow(); // TypeScript știe că este o Pisică
} else {
animal.bark(); // Aici este un Câine
}
}
Astfel, type guard ajută la lucrul sigur cu tipuri unite, clarificându-le în interiorul structurilor condiționale.