Chapitre 10. Génériques
Variables tu
déclarer dans le système de types ?
Un tout nouveau monde (dactylographié) !
Toutes les syntaxes de type que tu as apprises jusqu'à présent sont destinées à être utilisées avec des types qui sont parfaitement connus au moment où ils sont écrits. Parfois, cependant, un morceau de code peut être destiné à fonctionner avec différents types en fonction de la façon dont il est appelé.
Prends cette fonction identity en JavaScript destinée à recevoir une entrée de n'importe quel type possible et à renvoyer cette même entrée en sortie. Comment décrirais-tu son type de paramètre et son type de retour ?
functionidentity(input){returninput;}identity("abc");identity(123);identity({quote:"I think your self emerges more clearly over time."});
Nous pourrions déclarer input comme any, mais le type de retour de la fonction serait également any:
functionidentity(input:any){returninput;}letvalue=identity(42);// Type of value: any
Étant donné que input est autorisé à être n'importe quelle entrée, nous avons besoin d'un moyen de dire qu'il existe une relation entre le type input et le type que la fonction renvoie. TypeScript capture les relations entre les types à l'aide des génériques.
En TypeScript, les constructions telles que les fonctions peuvent déclarer un nombre quelconque de paramètres de type générique ...