string, number, boolean, bigint, symbol, null, undefined, any, unknown, never, void, object, arrays, tuples, enums, literals en unions, elk met een voorbeeld.
De basisdatatypes van TypeScript zijn de zeven JavaScript-primitieven, string, number, bigint, boolean, symbol, null en undefined, in kleine letters geschreven. Daarbovenop komen speciale types (any, unknown, never, void, object), structuren zoals arrays, tuples en enums, en manieren om types te combineren: literal types, unions en intersections.
De vier groepen
Doorzoek het naslagwerk op naam of filter het op groep. Elke rij heeft een voorbeeld van één regel dat u in een .ts-bestand kunt plakken, en de notitiekolom wijst op het gedrag waar mensen over struikelen, zoals het verschil tussen void en undefined of waarom unknown veiliger is dan any.
Zeven, net als JavaScript: string, number, bigint, boolean, symbol, null en undefined. number dekt zowel gehele getallen als decimalen; er is geen apart int- of float-type.
Beide accepteren elke waarde. Met any mag u er alles mee doen, dus fouten glippen er stilletjes door. Met unknown mag u er niets mee doen tot u het vernauwt met een controle zoals typeof, en daardoor is het de veilige keuze voor onbetrouwbare data.
never beschrijft waarden die niet kunnen voorkomen: het returntype van een functie die altijd een fout gooit, en wat er van een union overblijft nadat elk lid is afgehandeld. Dat tweede gebruik maakt exhaustiveness checks mogelijk.
Nee. void is het returntype van een functie waarvan de returnwaarde genegeerd moet worden. Een functie met void als returntype mag een callback krijgen die iets teruggeeft, terwijl undefined betekent dat de waarde echt undefined is.
object betekent elke niet-primitieve waarde, zoals objecten, arrays en functies. {} betekent elke waarde behalve null en undefined, primitieven inbegrepen. Het globale Object-type is zelden nuttig; kies liever object of een specifiek objecttype.
Elke controle haalt mogelijkheden weg. In de laatste tak weet de compiler dat value een string is.
Als er een nieuwe status bij de union komt, compileert de toewijzing aan never niet meer tot er een case voor is toegevoegd.
Tekst van elke lengte. Template literals zijn ook strings.
Gehele getallen en decimalen, inclusief NaN en Infinity.
Gehele getallen buiten het veilige integerbereik. Het achtervoegsel n vereist een ES2020-target.
Alleen true of false.
Elke aanroep van Symbol() maakt een unieke waarde.
Met strictNullChecks aan moet null in het type staan om te zijn toegestaan.
De waarde van een gedeclareerde maar niet toegewezen variabele en van een ontbrekende optionele eigenschap.
Schakelt de controle voor de waarde uit. noImplicitAny meldt plekken waar het ongemerkt binnensluipt.
Bevat elke waarde maar staat niets toe tot u het vernauwt.
Geen enkele waarde heeft ooit dit type: functies die altijd een fout gooien, en unions waar niets van over is.
Een returnwaarde die genegeerd moet worden. Niet hetzelfde als undefined.
Elke niet-primitieve waarde: objecten, arrays en functies.
string[] en Array<string> betekenen hetzelfde.
Hetzelfde als ReadonlyArray<number>. push en andere muterende methoden zijn verwijderd.
Vaste lengte met een type per positie. Optionele elementen komen aan het eind: [number, number?].
Maakt tijdens runtime een echt object aan, anders dan de meeste TypeScript-syntax.
Beschrijft eigenschappen inline. Geef het een naam met type of interface om het te hergebruiken.
Parameter- en returntypes. Kies dit liever dan het losse Function-type.
Exacte waarden in plaats van het hele primitief.
Eén van meerdere types. Vernauw met typeof, in of een gedeeld veld voordat u leden gebruikt.
Alle types tegelijk. Vooral gebruikt om objecttypes samen te voegen.
Primitieven
Speciaal
Structuren
Combinaties
Types zoeken
unknown, tuple, null...
Filteren op groep
Alle
{n} van {v} types getoond
Geen type komt overeen met deze zoekopdracht.
TypeScript-types met voorbeelden
Type
Groep
Voorbeeld
Notitie
Gratis beginnen · Geen creditcard nodig