Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Depuis March 2025, cette fonctionnalité fonctionne sur les appareils et les versions de navigateur les plus récents. Elle peut ne pas fonctionner sur les appareils ou navigateurs plus anciens.
La méthode map() des instances de Iterator retourne un nouvel objet d'aide à l'itérateur qui produit les éléments de l'itérateur, chacun transformé par une fonction de mappage.
Une fonction à exécuter pour chaque élément produit par l'itérateur. Elle retourne la valeur qui sera produite par l'objet d'aide à l'itérateur. La fonction est appelée avec les arguments suivants :
elementL'élément actuel en cours de traitement.
indexL'indice de l'élément actuel en cours de traitement.
Un nouvel objet d'aide à l'itérateur. Chaque fois que la méthode next() de l'objet d'aide à l'itérateur est appelée, elle obtient l'élément suivant de l'itérateur sous-jacent, applique callbackFn et renvoie la valeur retournée. Lorsque l'itérateur sous-jacent est terminé, l'objet d'aide à l'itérateur est également terminé (la méthode next() produit { value: undefined, done: true }).
Le principal avantage des objets d'aide à l'itérateur par rapport aux méthodes de tableau est qu'ils sont paresseux, ce qui signifie qu'ils ne produisent la valeur suivante que lorsqu'elle est demandée. Cela évite les calculs inutiles et permet également de les utiliser avec des itérateurs infinis. La méthode map() permet de créer un nouvel itérateur qui, lorsqu'il est itéré, produit des éléments transformés.
L'exemple suivant crée un itérateur qui produit les termes de la suite de Fibonacci, le transforme en une nouvelle suite avec chaque terme au carré, puis lit les premiers termes :
map() est le plus pratique lorsque vous ne créez pas manuellement l'itérateur. Comme les itérateurs sont également itérables, vous pouvez itérer sur l'objet d'aide retourné avec une boucle for...of :
Ceci est équivalent à :
| ECMAScript® 2027 Language Specification # sec-iterator.prototype.map |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 2 mars 2026 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.