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.
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2016.
La méthode [Symbol.iterator]() des instances de Array implémente le protocole itérable et permet aux tableaux d'être parcourus par la plupart des syntaxes qui attendent un itérable, comme la syntaxe de l'opérateur de propagation et les boucles for...of. Elle retourne un objet itérateur de tableau qui fournit la valeur de chaque indice du tableau.
La valeur initiale de cette propriété est la même fonction que la valeur initiale de la propriété Array.prototype.values.
Aucun.
La même valeur de retour que Array.prototype.values() : un nouvel objet d'itérateur itérable qui fournit la valeur de chaque indice du tableau.
Notez qu'il est rare d'avoir à appeler cette méthode directement. La présence de la méthode [Symbol.iterator]() rend les tableaux itérables, et les syntaxes d'itération comme la boucle for...of appellent automatiquement cette méthode pour obtenir l'itérateur à parcourir.
Vous pouvez toujours appeler manuellement la méthode next() de l'objet itérateur retourné pour avoir un contrôle maximal sur le processus d'itération.
Puisque les chaînes de caractères et les tableaux implémentent le protocole itérable, il est possible de concevoir une fonction générique pour traiter les deux types d'entrée de la même manière. Cela est préférable à l'appel direct de Array.prototype.values(), qui nécessite que l'entrée soit un tableau ou au moins un objet possédant cette méthode.
| ECMAScript® 2027 Language Specification # sec-array.prototype-%symbol.iterator% |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 5 nov. 2025 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.