Sylvain
Administrateur
Introduction
L'erreur "Array.prototype.map() attend une valeur de retour de la fonction fléchée" peut survenir lors de l'utilisation de la fonction fléchée avec Array.map(). Cette erreur apparaßt lorsque la fonction map ne retourne rien ou si la méthode filter est utilisée de maniÚre incorrecte. De plus, les utilisateurs configurent parfois par erreur Array.forEach() au lieu de Array.map(), ce qui déclenche l'erreur.
Prérequis
Avant de commencer avec les solutions légÚrement complexes, essayez celles-ci :
⹠Assurez-vous de filtrer les données puis de parcourir le tableau qui retourne. Pour cela, utilisez d'abord la fonction filter puis la fonction map
âą VĂ©rifiez que la fonction filter a une instruction return
Procédure
Utiliser Array.prototype.forEach()
⹠Si une valeur de retour n'est pas requise de la fonction et que le tableau créé par Array.prototype.map() n'est pas utilisé, alors optez pour la fonction Array.prototype.forEach()
⹠La derniÚre ne retourne aucune valeur spéciale et est le meilleur choix dans de tels cas. Pour en savoir plus sur Array.prototype.forEach(), consultez le document de développeur Mozilla
Remplacer {} par ()
⹠Utiliser {} dans la fonction créera un bloc de flÚche qui nécessite une instruction de retour explicite. Si ce n'est pas le cas avec votre code, remplacez-le par ()
⹠Maintenant, vous aurez un retour implicite et l'erreur "Array.prototype.map() attend une valeur de retour de la fonction fléchée" sera corrigée
Retourner null
âą Une autre approche consiste Ă retourner une valeur null si les conditions fournies ne correspondent pas. Pour ce faire, ajoutez ce qui suit vers la fin, juste avant la parenthĂšse fermante :
Utiliser Array.prototype.filter() Ă la place
⹠Si un filtrage est nécessaire, vous devriez envisager d'utiliser Array.prototype.filter() au lieu de Array.prototype.map(). Cela créera une copie des éléments qui passent les exigences définies par la fonction
⹠Pour en savoir plus sur Array.prototype.filter(), consultez le document de développeur Mozilla : https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
Conclusion
Ces méthodes permettent de corriger l'erreur "Array.prototype.map() attend une valeur de retour de la fonction fléchée". Rappelez-vous, vous n'avez pas nécessairement à utiliser la fonction map() à chaque fois. Selon la situation et si une valeur de retour est requise, passez aux fonctions filter() et forEach().
L'erreur "Array.prototype.map() attend une valeur de retour de la fonction fléchée" peut survenir lors de l'utilisation de la fonction fléchée avec Array.map(). Cette erreur apparaßt lorsque la fonction map ne retourne rien ou si la méthode filter est utilisée de maniÚre incorrecte. De plus, les utilisateurs configurent parfois par erreur Array.forEach() au lieu de Array.map(), ce qui déclenche l'erreur.
Prérequis
Avant de commencer avec les solutions légÚrement complexes, essayez celles-ci :
⹠Assurez-vous de filtrer les données puis de parcourir le tableau qui retourne. Pour cela, utilisez d'abord la fonction filter puis la fonction map
âą VĂ©rifiez que la fonction filter a une instruction return
Procédure
Utiliser Array.prototype.forEach()
⹠Si une valeur de retour n'est pas requise de la fonction et que le tableau créé par Array.prototype.map() n'est pas utilisé, alors optez pour la fonction Array.prototype.forEach()
⹠La derniÚre ne retourne aucune valeur spéciale et est le meilleur choix dans de tels cas. Pour en savoir plus sur Array.prototype.forEach(), consultez le document de développeur Mozilla
Remplacer {} par ()
⹠Utiliser {} dans la fonction créera un bloc de flÚche qui nécessite une instruction de retour explicite. Si ce n'est pas le cas avec votre code, remplacez-le par ()
⹠Maintenant, vous aurez un retour implicite et l'erreur "Array.prototype.map() attend une valeur de retour de la fonction fléchée" sera corrigée
Retourner null
âą Une autre approche consiste Ă retourner une valeur null si les conditions fournies ne correspondent pas. Pour ce faire, ajoutez ce qui suit vers la fin, juste avant la parenthĂšse fermante :
return null;
Utiliser Array.prototype.filter() Ă la place
⹠Si un filtrage est nécessaire, vous devriez envisager d'utiliser Array.prototype.filter() au lieu de Array.prototype.map(). Cela créera une copie des éléments qui passent les exigences définies par la fonction
⹠Pour en savoir plus sur Array.prototype.filter(), consultez le document de développeur Mozilla : https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
Conclusion
Ces méthodes permettent de corriger l'erreur "Array.prototype.map() attend une valeur de retour de la fonction fléchée". Rappelez-vous, vous n'avez pas nécessairement à utiliser la fonction map() à chaque fois. Selon la situation et si une valeur de retour est requise, passez aux fonctions filter() et forEach().