Array.prototype.includes(searchElement) Typage d'arguments et compatibilité des éléments de tableau
TypeScript applique des règles de typage strictes pour les opérations sur les tableaux, y compris le tableau Méthode .prototype.includes(). Cette méthode compare les éléments de recherche aux éléments du tableau pour déterminer l'inclusion. Cependant, l'exigence stricte de saisie pour que les éléments de recherche correspondent au type d'éléments du tableau peut parfois soulever des questions.
Description du problème
Un utilisateur a défini un type de données AllowedChars représentant des caractères. 'x', 'y', 'z'. Un tableau exampleArr a été créé en utilisant ce type. Cependant, lors de la tentative d'utilisation de la méthode Array.prototype.includes() pour vérifier si une pression sur une touche d'événement clavier se trouvait dans le tableau, le compilateur TypeScript s'est plaint que le type d'argument 'string' n'était pas attribuable au type AllowedChars.
Pourquoi la saisie d'arguments est-elle liée au type d'élément de tableau ?
L'argument de Array.prototype.includes() est l'élément de recherche comparé aux éléments du tableau. TypeScript s'attend à ce que cet argument corresponde au type des éléments du tableau pour les raisons suivantes :
Options de résolution
Pour résoudre ce problème de typage, il existe plusieurs approches :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!