unknown vs any vs never
TypeScript 🟡 MidType : 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">39;erreur, danger
function safe(val: unknown) {
if (typeof val === 39;string39;) 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.