TypeScript

Discriminated unions

Në shqip: Union-et me etiketë

ShpjegimiSQ

Një union me etiketë është një union objektesh që kanë të gjithë një fushë të përbashkët (si lloji: "rreth" | "katror"). Po e kontrollove atë fushë, TypeScript-i e di saktë cilat fusha të tjera ekzistojnë.

EnglishEN

A discriminated union is a union of objects that all share a common field (like kind: "circle" | "square"). Check that field and TypeScript knows exactly which other fields exist.

Si ta mendosh

Si pakot me ngjyra në postë: nga ngjyra e di menjëherë çfarë ka brenda dhe ku shkon.

Lexoje në anglisht

Like colour-coded parcels at the post office: from the colour you instantly know what's inside and where it goes.

Shembull koditypescript

type Forme = { lloji: "rreth"; r: number } | { lloji: "katror"; a: number };
function siperfaqja(f: Forme) {
  return f.lloji === "rreth" ? Math.PI * f.r ** 2 : f.a ** 2;
}

Terma të lidhur