Kodokon kodokon.com

Types primitifs, tableaux et unions simples

Apprenez les trois types de base, la façon de typer un tableau et la création d'unions de types.

7 min · 3 questions

Ouvrir cette leçon dans Kodokon

Les types primitifs sont les briques de base de TypeScript. Les trois plus courants sont : string pour les textes (toujours entre guillemets), number pour tous les nombres (entiers comme décimaux) et boolean pour les valeurs true ou false. Notez qu'ils s'écrivent en minuscules.

TYPESCRIPT
let city: string = "Paris";
let temperature: number = 21.5;
let isRaining: boolean = false;
Un exemple de chaque type primitif.

Un tableau est une liste ordonnée de valeurs. Pour le typer, vous écrivez le type des éléments suivi de crochets : number[] se lit « tableau de nombres ». TypeScript vérifie alors chaque élément que vous ajoutez.

TYPESCRIPT
const scores: number[] = [12, 15, 9];
const guests: string[] = ["Nadia", "Louis"];

scores.push(18); // accepté : 18 est un number
// scores.push("vingt"); -> erreur : pas un number
Le tableau garde toujours le même type d'éléments.

Parfois, une valeur peut légitimement avoir plusieurs types. Une union se note avec une barre verticale | et se lit « ou » : le type string | number accepte soit un texte, soit un nombre. Vous pouvez aussi créer une union de valeurs précises pour limiter les choix possibles.

TYPESCRIPT
let answer: string | number;
answer = "quarante-deux"; // accepté
answer = 42;              // accepté aussi

type Size = "small" | "medium" | "large";
let cupSize: Size = "medium";
// cupSize = "xl"; -> erreur : valeur non autorisée
Deux unions : une union de types, une union de valeurs.

Quiz de validation

Vérifiez que vous avez bien retenu les points clés de cette leçon.

  1. Quel type utiliseriez-vous pour la valeur true ?
    • string
    • number
    • boolean
  2. Comment déclarer un tableau qui ne contient que des nombres ?
    • let list: number[]
    • let list: [number]
    • let list: array
  3. Que signifie le type string | number ?
    • La valeur est à la fois un texte et un nombre
    • La valeur est soit un texte, soit un nombre
    • La valeur est obligatoirement un texte
    • La valeur peut être n'importe quoi