Types de données TypeScript : la référence complète

Types de données TypeScript

Types de données TypeScript : tous les types dans un tableau | We.Inc

string, number, boolean, bigint, symbol, null, undefined, any, unknown, never, void, object, tableaux, tuples, enums, littéraux et unions, chacun avec un exemple.

Les types de données de base de TypeScript sont les sept primitives JavaScript, string, number, bigint, boolean, symbol, null et undefined, écrites en minuscules. Il y ajoute des types spéciaux (any, unknown, never, void, object), des structures comme les tableaux, les tuples et les enums, et des façons de combiner les types : types littéraux, unions et intersections.

Les quatre groupes

Recherchez dans la référence par nom ou filtrez-la par groupe. Chaque ligne contient un exemple d'une ligne que vous pouvez coller dans un fichier .ts, et la colonne des notes signale le comportement qui piège souvent, comme l'écart entre void et undefined ou la raison pour laquelle unknown est plus sûr que any.

Questions fréquentes

Combien de types primitifs TypeScript possède-t-il ?

Sept, comme JavaScript : string, number, bigint, boolean, symbol, null et undefined. number couvre à la fois les entiers et les décimaux ; il n'existe pas de type int ou float séparé.

Quelle est la différence entre any et unknown ?

Les deux acceptent n'importe quelle valeur. any vous laisse tout faire avec, donc les erreurs passent en silence. unknown ne vous laisse rien faire tant que vous ne l'avez pas affiné avec une vérification comme typeof, ce qui en fait le choix sûr pour les données non fiables.

À quoi sert le type never ?

never décrit des valeurs qui ne peuvent pas exister : le type de retour d'une fonction qui lève toujours une erreur, et ce qui reste d'une union une fois chaque membre traité. Ce second usage permet les vérifications d'exhaustivité.

void est-il identique à undefined ?

Non. void est le type de retour d'une fonction dont la valeur de retour doit être ignorée. Une fonction typée comme renvoyant void peut recevoir un callback qui renvoie quelque chose, alors que undefined signifie que la valeur est réellement undefined.

Quelle est la différence entre object, Object et {} ?

object désigne toute valeur non primitive, comme les objets, les tableaux et les fonctions. {} désigne toute valeur sauf null et undefined, primitives comprises. Le type global Object est rarement utile ; préférez object ou un type objet précis.

Primitives : ce que renvoie typeof

Les types spéciaux marquent les limites

Combiner les types

De unknown à un type utilisable

Affiner une entrée non fiable étape par étape

Chaque vérification élimine des possibilités. Dans la dernière branche, le compilateur sait que value est une chaîne.

never comme vérification d'exhaustivité

Si un nouveau statut rejoint l'union, l'affectation à never ne compile plus tant qu'un case n'est pas ajouté pour lui.

Du texte de n'importe quelle longueur. Les template literals sont aussi des chaînes.

Entiers et décimaux confondus, y compris NaN et Infinity.

Nombres entiers au-delà de la plage des entiers sûrs. Le suffixe n nécessite une cible ES2020.

Seulement true ou false.

Chaque appel à Symbol() crée une valeur unique.

Avec strictNullChecks activé, null doit figurer dans le type pour être autorisé.

La valeur d'une variable déclarée mais non affectée et d'une propriété optionnelle absente.

Désactive la vérification pour la valeur. noImplicitAny signale les endroits où il s'introduit sans prévenir.

Accepte n'importe quelle valeur mais n'autorise rien tant que vous ne l'avez pas affinée.

Aucune valeur n'a jamais ce type : fonctions qui lèvent toujours une erreur, et unions dont il ne reste rien.

Une valeur de retour qui doit être ignorée. Ce n'est pas la même chose que undefined.

Toute valeur non primitive : objets, tableaux et fonctions.

Tableau

string[] et Array<string> signifient la même chose.

Tableau readonly

Équivaut à ReadonlyArray<number>. push et les autres méthodes de mutation sont retirées.

Tuple

Longueur fixe avec un type par position. Les éléments optionnels vont à la fin : [number, number?].

Génère un véritable objet à l'exécution, contrairement à la plupart de la syntaxe TypeScript.

Type objet

Décrit les propriétés en ligne. Nommez-le avec type ou interface pour le réutiliser.

Type fonction

Types des paramètres et du retour. Préférez-le au type Function trop permissif.

Type littéral

Des valeurs exactes plutôt que toute la primitive.

Union

L'un de plusieurs types. Affinez avec typeof, in ou un champ commun avant d'utiliser les membres.

Intersection

Tous les types à la fois. Surtout utilisé pour fusionner des types objet.

Primitives

Spéciaux

Structures

Combinaisons

Référence des types avec recherche

Rechercher des types

unknown, tuple, null...

Filtrer par groupe

Tous

{n} types affichés sur {v}

Aucun type ne correspond à cette recherche.

Types TypeScript avec exemples

Type

Groupe

Exemple

Note

Commencer gratuitement · Sans carte bancaire

Voir aussi: Guides

Produit

Pour qui

Fonctionnalités

Ressources

Entreprise

Plan du site