Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Array : méthode entries()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨juillet 2015⁩.

La méthode entries() des instances de Array retourne un nouvel objet itérateur de tableau qui contient les paires clé/valeur pour chaque indice du tableau.

Exemple interactif

const array1 = ["a", "b", "c"];

const iterator1 = array1.entries();

console.log(iterator1.next().value);
// Sortie attendue : Array [0, "a"]

console.log(iterator1.next().value);
// Sortie attendue : Array [1, "b"]

Syntaxe

js
entries()

Paramètres

Aucun.

Valeur de retour

Un nouvel objet d'itération.

Description

Lorsqu'elle est utilisée sur des tableaux creux, la méthode entries() itère sur les cases vides comme si elles avaient la valeur undefined.

La méthode entries() est générique. Elle attend seulement que la valeur de this possède une propriété length et des propriétés à clés entières.

Exemples

Parcourir un tableau avec ses index et éléments

js
const arr = ["a", "b", "c"];

for (const [index, element] of arr.entries()) {
  console.log(index, element);
}

// 0 "a"
// 1 "b"
// 2 "c"

Boucle for...of

js
const array = ["a", "b", "c"];
const arrayEntries = array.entries();

for (const element of arrayEntries) {
  console.log(element);
}

// [0, 'a']
// [1, 'b']
// [2, 'c']

Itération sur des tableaux creux

entries() parcourt les cases vides comme si elles valaient undefined.

js
for (const element of [, "a"].entries()) {
  console.log(element);
}
// [0, undefined]
// [1, 'a']

Appel de entries() sur des objets qui ne sont pas des tableaux

La méthode entries() 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.

js
const arrayLike = {
  length: 3,
  0: "a",
  1: "b",
  2: "c",
  3: "d", // ignoré par entries() car length vaut 3
};
for (const entry of Array.prototype.entries.call(arrayLike)) {
  console.log(entry);
}
// [ 0, 'a' ]
// [ 1, 'b' ]
// [ 2, 'c' ]

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-array.prototype.entries

Compatibilité des navigateurs

Voir aussi