Chapitre 5. Travailler avec n'importe quel
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
Systèmes de types étaient traditionnellement des affaires binaires : soit un langage avait un système de types entièrement statique, soit un système entièrement dynamique. TypeScript brouille la frontière, car son système de types est facultatif et graduel. Tu peux ajouter des types à certaines parties de ton programme, mais pas à d'autres.
C'est essentiel pour migrer petit à petit les bases de code JavaScript existantes vers TypeScript(chapitre 8). La clé est le type any, qui désactive effectivement la vérification des types pour certaines parties de ton code. Il est à la fois puissant et susceptible d'être utilisé à mauvais escient. Apprendre à utiliser any à bon escient est essentiel pour écrire un TypeScript efficace. Ce chapitre t'explique comment limiter les inconvénients de any tout en conservant ses avantages.
Point 38 : Utiliser le champ d'application le plus étroit possible pour tous les types de produits
Considère ce code :
functionprocessBar(b:Bar){/* ... */}functionf() {constx=expressionReturningFoo();processBar(x);// ~ Argument of type 'Foo' is not assignable to// parameter of type 'Bar'}
Si tu sais d'une manière ou d'une autre, grâce au contexte, que x est assignable à Bar en plus de Foo, tu peux forcer TypeScript à accepter ce code de deux manières :
functionf1() {const