HTML: Markup language
CSS: Styling language
JavaScript: Scripting language
Web APIs: Programming interfaces
All web technology
Learn web development
Discover our tools
Get to know MDN better
Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.
View in English Always switch to English
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julio de 2015.
El método keys() devuelve un nuevo objeto Array Iterator que contiene las claves para cada indice en el arreglo.
keys()
const array1 = ["a", "b", "c"]; const iterator = array1.keys(); for (const key of iterator) { console.log(key); } // Expected output: 0 // Expected output: 1 // Expected output: 2
Un nuevo objeto iterador Array.
Array
Cuando es usado en arreglos dispersos, el método keys() itera las ranuras vacias como si tuvieran el valor undefined
undefined
El método keys() es generico. Este solo espera el valor de this que tenga un propiedad length y propiedades con claves enteras.
this
length
A diferencia de Object.keys(), el cual únicamente incluye las claves que realmente existen en el arreglo, el iterador keys() no ignora los huecos que representan las propiedades faltantes.
Object.keys()
const arr = ["a", , "c"]; const sparseKeys = Object.keys(arr); const denseKeys = [...arr.keys()]; console.log(sparseKeys); // ['0', '2'] console.log(denseKeys); // [0, 1, 2]
El método keys() lee la propiedad length de this y luego produce todos los indices entre 0 y length - 1. Realmente no ocurre ningún acceso al índice.
length - 1
const arrayLike = { length: 3, }; for (const entry of Array.prototype.keys.call(arrayLike)) { console.log(entry); } // 0 // 1 // 2
Enable JavaScript to view this browser compatibility table.
Array.prototype.keys
core-js
Array.prototype.values()
Array.prototype.entries()