--- title: Array.prototype.keys() slug: Web/JavaScript/Reference/Global_Objects/Array/keys tags: - Array - ECMAScript 2015 - Iterator - JavaScript - Méthode - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Array/keys original_slug: Web/JavaScript/Reference/Objets_globaux/Array/keys ---
{{JSRef}}

La méthode keys() renvoie un nouvel objet Array Iterator qui contient les clefs pour chaque indice du tableau.

{{EmbedInteractiveExample("pages/js/array-keys.html")}}

Syntaxe

arr.keys()

Valeur de retour

Un nouvel objet itérateur pour {{jsxref("Array")}}.

Exemples

Utilisation simple

var arr = ["a","b","c"];
var itérateur = arr.keys();

console.log(itérateur.next()); // { value: 0, done: false }
console.log(itérateur.next()); // { value: 1, done: false }
console.log(itérateur.next()); // { value: 2, done: false }
console.log(itérateur.next()); // { value: undefined, done: true }

Un itérateur de clés prend en compte les trous

var arr = ["a", , "c"];
var clésCreuses = Object.keys(arr);
var clésDenses = [...arr.keys()];
console.log(clésCreuses); // ["0", "2"]
console.log(clésDenses);  // [0, 1, 2]

Spécifications

Spécification État Commentaires
{{SpecName('ES2015', '#sec-array.prototype.keys', 'Array.prototype.keys')}} {{Spec2('ES2015')}} Définition initiale.
{{SpecName('ESDraft', '#sec-array.prototype.keys', 'Array.prototype.keys')}} {{Spec2('ESDraft')}}  

Compatibilité des navigateurs

{{Compat("javascript.builtins.Array.keys")}}

Voir aussi