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 mai 2018.
La méthode values() des instances de Array retourne un nouvel objet itérateur de tableau qui itère sur la valeur de chaque élément du tableau.
Aucun.
Un nouvel objet d'itérateur itérable.
Array.prototype.values() est l'implémentation par défaut de Array.prototype[Symbol.iterator]().
Lorsqu'elle est utilisée sur un tableau creux, la méthode values() itère sur les cases vides comme si elles avaient la valeur indéfinie (undefined).
La méthode values() est générique. Elle attend seulement que la valeur de this possède une propriété length et des propriétés à indices entiers.
Comme values() retourne un itérateur itérable, vous pouvez utiliser une boucle for...of pour l'itérer.
Comme la valeur de retour est aussi un itérateur, vous pouvez appeler directement sa méthode next().
Attention : L'objet itérateur de tableau doit être utilisé une seule fois. Ne le réutilisez pas.
L'itérable retourné par values() n'est pas réutilisable. Lorsque next().done = true ou que currentIndex > length, la boucle for...of se termine et toute itération supplémentaire n'a aucun effet.
Si vous utilisez une instruction break pour arrêter l'itération prématurément, l'itérateur peut reprendre à la position courante lors de la prochaine itération.
Aucune valeur n'est stockée dans l'objet itérateur de tableau retourné par values() : il stocke l'adresse du tableau utilisé lors de sa création et lit l'indice courant à chaque itération. Ainsi, la valeur retournée dépend de la valeur stockée à cet indice au moment de l'itération. Si les valeurs du tableau changent, celles de l'itérateur changent aussi.
Contrairement aux méthodes itératives, l'itérateur de tableau ne mémorise pas la longueur du tableau à sa création, mais la lit à chaque itération. Ainsi, si le tableau grandit pendant l'itération, l'itérateur visitera aussi les nouveaux éléments. Cela peut entraîner des boucles infinies.
values() visitera les cases vides comme si elles valaient undefined.
La méthode values() lit la propriété length de this puis accède à chaque propriété dont la clé est un entier non négatif inférieur à length.
| ECMAScript® 2027 Language Specification # sec-array.prototype.values |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 6 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.