const Type Parameters

TypeScript 🟡 Mid

Définition

Modificateur const sur un paramètre générique, introduit en TypeScript 5.0 (16 mars 2023) : les arguments littéraux sont inférés comme s'ils portaient as const (tuples readonly, littéraux de chaîne), sans que l'appelant ait à l'écrire. La fonction obtient ainsi les types les plus précis possibles.

Analogie

Un photographe qui capture la scène en haute définition d'office, sans que le client demande le mode RAW.

Exemple de code

function nommer<const T extends readonly string[]>(noms: T): T { return noms; }

const a = nommer(['alice', 'bob']);
// a : readonly ['alice', 'bob']  (sans const : string[])

type Premier = (typeof a)[0]; // 'alice'
// Avant TS 5.0 : nommer(['alice', 'bob'] as const) côté appelant

Cas d'usage

Bibliothèques de routage, de validation ou de configuration typée qui veulent les littéraux exacts de l'appelant.

Anti-pattern

Mettre const partout : sur des données destinées à être mutées, on impose des readonly indésirables.
#core#ts5#generics#interview

Fiche mise à jour le 2026-09-27

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