Literal Types

TypeScript 🟢 Junior

Définition

Types qui représentent une valeur exacte plutôt qu'une catégorie. Permet de restreindre une variable a des valeurs précises comme "GET" | "POST".

Analogie

Comme un menu fixe au restaurant — vous ne pouvez choisir que parmi les plats proposes, pas inventer le votre.

Exemple de code

type Method = "GET" | "POST" | "PUT";
const req = (method: Method) => fetch("/", { method });
req("GET");  // OK
// req("PATCH"); // Erreur

Cas d'usage

Restreindre les paramètrès de configuration aux seules valeurs valides.

Anti-pattern

Utiliser string la ou un ensemble fini de valeurs est attendu — aucune aide de l'autocompletion.
#core#interview#beginner

En entretien

  1. Explique-moi ce qu'est un literal type.

    C'est un type qui représente une valeur exacte plutôt qu'une catégorie, par exemple restreindre une variable à "GET" | "POST".

  2. Pourquoi ne pas utiliser simplement `string` pour un paramètre de méthode HTTP ?

    Utiliser string là où un ensemble fini de valeurs est attendu prive de l'aide de l'autocomplétion sur les valeurs valides.

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre