const assertion (as const)

TypeScript 🟡 Mid

Definition

Assertion qui empeche le widening et rend toutes les proprietes readonly et les valeurs litterales. Transforme un objet/tableau en version profondement immutable.

Analogie

Comme graver dans le marbre — une fois ecrit, chaque detail est fige exactement tel quel.

Exemple de code

const config = {
  api: "https://api.com",
  retries: 3
} as const;
// type: { readonly api: "https://api.com"; readonly retries: 3 }

Cas d'usage

Creer des constantes avec des types litteraux exacts pour les discriminated unions et les lookups.

Anti-pattern

Oublier as const sur des tableaux utilises comme union — ["a", "b"] donne string[] au lieu de readonly ["a", "b"].

Termes lies

#core#interview#best-practice