🔀
Type System Fundamentals

Union & Intersection Types

Combining Types
💡 Union, type, EK, "EITHER-OR, MENU" hai — VALUE, MULTIPLE, TYPES, mein, se, KOI, EK, ho, sakti, hai. Intersection, type, EK, "COMBO, MEAL" hai — VALUE, ko, MULTIPLE, TYPES, ki, SAARI, PROPERTIES, EK, saath, satisfy, karni, PADТI, hai.

Union, types, (|) EK, VALUE, ko, MULTIPLE, POSSIBLE, types, mein, se, EK, HONE, deta hai — jaise, string | number, EK, VALUE, YA, TOH, string, hogi, YA, number.

Intersection, types, (&) MULTIPLE, types, ko, COMBINE, karte, HAIN — RESULTING, type, SAARE, COMBINED, types, ki, PROPERTIES, RAKHТА, hai.

function printId(id: string | number) {
  console.log("ID:", id);
}
printId(101);      // OK
printId("202");    // OK

type Person = { name: string };
type Employee = { salary: number };
type Staff = Person & Employee;   // { name: string; salary: number }
🔀
Union, type, EK, "EITHER-OR, MENU" hai — VALUE, MULTIPLE, TYPES, mein, se, KOI, EK, ho, sakti, hai. Intersection, type, EK, "COMBO, MEAL" hai — VALUE, ko, MULTIPLE, TYPES, ki, SAARI, PROPERTIES, EK, saath, satisfy, karni, PADТI, hai.
1 / 2
⚡ झट से Recap
  • Union (|) = value, MULTIPLE, types, mein, se, KOI, EK, ho, sakti, hai
  • Intersection (&) = MULTIPLE, types, combine, ho, jaate, hain
  • Union types, states/statuses, represent, karne, ke, liye, COMMON, hain
इस page में (2 subtopics)

Discriminated, union, EK, PATTERN, hai, JAHA, HAR, TYPE, mein, EK, COMMON, "TAG" property, hai (jaise, kind), JISSE, TypeScript, EASILY, NARROW, kar, sakta hai, ki, KAUN, sa, SPECIFIC, TYPE, hai.

type Shape =
  | { kind: "circle"; radius: number }
  | { kind: "square"; side: number };

function area(shape: Shape) {
  if (shape.kind === "circle") return Math.PI * shape.radius ** 2;
  return shape.side ** 2;
}

Agar, DO, intersected, types, mein, SAME, property, name, hai, DIFFERENT, types, ke, saath, (jaise, EK, mein, string, DUSRE, mein, number), RESULTING, property, TYPE, never, ban, jaata hai — kyunki, KOI, BHI, VALUE, DONO, types, ko, SATISFY, nahi, kar, sakti.

⚠️Common Mistake: Intersection, types, mein, CONFLICTING, property, types, se, ACCIDENTALLY, never, TYPE, ban, sakta hai — YE, EK, SUBTLE, bug, source, hai.