--- title: Array.prototype.keys() slug: Web/JavaScript/Reference/Global_Objects/Array/keys tags: - Iteração - metodo translation_of: Web/JavaScript/Reference/Global_Objects/Array/keys ---
{{JSRef("Global_Objects", "Array")}}

Sumário

O método keys() retorna um novo Array Iterator que contém as chaves para cada index do array.

Sintaxe

arr.keys()

Exemplos

Exemplo: uso básico

var arr = ["a", "b", "c"];
var iterator = arr.keys();

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

Exemplo: keys iterator não ignora lacunas

var arr = ["a", , "c"];
var sparseKeys = Object.keys(arr);
var denseKeys = [...arr.keys()];
console.log(sparseKeys); // [0, 2]
console.log(denseKeys);  // [0, 1, 2]

Especificações

Especificação Status Comentário
{{SpecName('ES6', '#sec-array.prototype.keys', 'Array.prototype.keys')}} {{Spec2('ES6')}} Definição inicial.

Compatibilidade de Browser

{{CompatibilityTable}}
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte Básico {{CompatChrome("38")}} {{CompatGeckoDesktop("28")}} {{CompatNo}} {{CompatOpera("25")}} {{CompatSafari("7.1")}}
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte Básico {{CompatNo}} {{CompatNo}} {{CompatGeckoMobile("28")}} {{CompatNo}} {{CompatNo}} iOS 8

Veja também