TypeScript Academy · Les

Union- en intersectietypen

Combineer meerdere typen en werk ermee

Les 2 van 410 stappen

Union- en intersectietypen is een gratis TypeScript Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject TypeScript Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus TypeScript Academy bevat in totaal 4 lessen.

Unie- en doorsnedetypen

Welkom bij de volgende les! In deze les leer je hoe je unietypen gebruikt om meerdere mogelijke typen voor een variabele toe te staan en doorsnedetypen om meerdere typen tot één type te combineren. Dit zijn krachtige hulpmiddelen om flexibele en robuuste code te maken. Laten we beginnen!

Union- en intersectietypen — illustratie 1

Wat zijn unietypen?

Met unietypen kan een variabele meer dan één type bevatten. Je kunt het symbool | gebruiken om een unietype te definiëren.

Voorbeeld: Een variabele die een tekenreeks of een getal kan zijn:

Opdracht: Declareer een variabele met een unietype en wijs er verschillende waarden aan toe.

let value: string | number;
value = "Hello";
console.log(value); // Output: "Hello"

value = 42;
console.log(value); // Output: 42

Unietypen in functies gebruiken

Je kunt unietypen gebruiken in functieparameters om meerdere invoertypen toe te staan. Voorbeeld:

Opdracht: Schrijf een functie die een parameter van een unietype accepteert en deze naar de console schrijft.

function printValue(value: string | number): void {
  console.log(`The value is ${value}`);
}

printValue("Hello"); // Output: The value is Hello
printValue(100); // Output: The value is 100

Wat zijn doorsnedetypen?

Met doorsnedetypen combineer je meerdere typen tot één type. Je kunt het symbool & gebruiken om een doorsnedetype te definiëren.

Voorbeeld: Twee objecttypen combineren:

Opdracht: Maak een doorsnedetype om twee objecten te combineren en gebruik het.

type Person = { name: string };
type Employee = { employeeId: number };

type Staff = Person & Employee;

let staffMember: Staff = {
  name: "Alice",
  employeeId: 123,
};

console.log(staffMember);

Typebewaking met unietypen gebruiken

TypeScript weet niet welk type je in een unietype gebruikt. Je kunt typebewaking gebruiken om het type te verfijnen. Voorbeeld:

Opdracht: Gebruik typebewaking om verschillende typen in een unietype af te handelen.

function display(value: string | number): void {
  if (typeof value === "string") {
    console.log(`String value: ${value.toUpperCase()}`);
  } else {
    console.log(`Number value: ${value * 2}`);
  }
}

display("Hello"); // Output: String value: HELLO
display(5); // Output: Number value: 10

Doorsnedetypen in de praktijk

Doorsnedetypen zijn handig bij het werken met objecten die eigenschappen delen. Voorbeeld:

Opdracht: Maak een doorsnedetype voor beheerders- en gebruikersrollen.

type Admin = { adminLevel: string };
type User = { username: string };

type AdminUser = Admin & User;

let admin: AdminUser = {
  adminLevel: "super",
  username: "admin123",
};

console.log(`Admin ${admin.username} has level ${admin.adminLevel}`);

Veelgemaakte fouten met unie- en doorsnedetypen

Hier volgen enkele veelgemaakte fouten:

  • Een unietype gebruiken zonder alle mogelijke gevallen af te handelen, bijvoorbeeld door een typebewaking te vergeten.
  • Typen onnodig ingewikkeld maken met overbodige doorsnedetypen.
  • Onverenigbare waarden toewijzen aan een unie- of doorsnedetype.

Tip: Test je code altijd om te controleren of de typen werken zoals verwacht!

Wanneer gebruik je unie- en doorsnedetypen?

Gebruik unietypen wanneer:

  • Een variabele één van meerdere mogelijke typen kan hebben.
  • Je flexibiliteit in functieparameters nodig hebt.

Gebruik doorsnedetypen wanneer:

  • Je meerdere objecten of typen tot één type combineert.
  • Je complexere typen voor specifieke toepassingen maakt.
type A = { x: number };
type B = { y: number };

type AB = A & B;

let obj: AB = { x: 5, y: 10 };

Goed gedaan!

Gefeliciteerd! Je hebt geleerd hoe je unie- en doorsnedetypen gebruikt om complexe situaties in TypeScript af te handelen. Met deze hulpmiddelen wordt je code flexibeler en duidelijker. In de volgende les bekijken we enumeraties en hoe die helpen bij het beheren van constante waarden. Laten we blijven programmeren!

Union- en intersectietypen — illustratie 10
Gratis beginnen

Leer TypeScript met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
101
Lessen
352

Veelgestelde vragen

Is de les “Union- en intersectietypen” gratis?

Ja — de volledige tekst van “Union- en intersectietypen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus TypeScript Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus TypeScript Academy bevat in totaal 4 lessen.

Wat leer ik in “Union- en intersectietypen”?

Combineer meerdere typen en werk ermee Je oefent met TypeScript Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met TypeScript Academy te beginnen?

Ervaring vooraf is niet nodig. TypeScript Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Union- en intersectietypen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over TypeScript Academy?

Ja. Elke les over TypeScript Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Arrays en tuples
  2. Union- en intersectietypen
  3. Enums
  4. Letterlijke typen
← Terug naar TypeScript Academy