Sobes.tech
Middle+

Mi az a type guard?

sobes.tech MI

Válasz az MI-től

Type guard — ez egy mechanizmus a TypeScript-ben, amely lehetővé teszi egy változó típusának pontosítását egy adott kódrészletben, hogy a fordító biztonságosan tudjon dolgozni ezzel a típussal. A type guard — egy függvény vagy kifejezés, amely ellenőrzi, hogy egy objektum megfelel-e egy adott típusnak.

Példa egyéni függvény használatával készült type guard-ra:

interface Macska {
  meow(): void;
}

interface Kutya {
  bark(): void;
}

function isMacska(allat: Macska | Kutya): allat is Macska {
  return (allat as Macska).meow !== undefined;
}

function beszél(allat: Macska | Kutya) {
  if (isMacska(allat)) {
    allat.meow(); // A TypeScript tudja, hogy ez egy Macska
  } else {
    allat.bark(); // Itt egy Kutya
  }
}

Így a type guard segít biztonságosan dolgozni egyesített típusokkal, pontosítva azokat feltételes szerkezeteken belül.