Sofiane Boumedine Lexique Dev

unknown vs any vs never

TypeScript 🟡 Mid

Type : Concept

Definition

any desactive le typage (tout est permis). unknown est le type sur de "je ne sais pas" : il force une verification avant usage. never represente l'absence de valeur (fonction qui throw, code inatteignable).

Analogie

any : un joker sans regles. unknown : un colis suspect a inspecter avant ouverture. never : un couloir sans issue, on n'y arrive jamais.

Exemple de code

function risky(val: any) { val.foo(); }    class="cmt">// pas dclass="str">'erreur, danger
function safe(val: unknown) {
  if (typeof val === 'string') val.toUpperCase(); class="cmt">// OK apres check
}
function fail(): never { throw new Error(); }

Cas d'usage

Utiliser unknown au lieu de any pour les donnees externes (API, JSON.parse) et forcer la validation.

coreinterview-questionsecurity