Baseline Widely available
El método keys()
devuelve un nuevo objeto Array Iterator que contiene las claves para cada indice en el arreglo.
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
Sintaxis Valor de retorno
Un nuevo objeto iterador Array
.
Cuando es usado en arreglos dispersos, el método keys()
itera las ranuras vacias como si tuvieran el valor undefined
El método keys()
es generico. Este solo espera el valor de this
que tenga un propiedad length
y propiedades con claves enteras.
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.
const arr = ["a", , "c"];
const sparseKeys = Object.keys(arr);
const denseKeys = [...arr.keys()];
console.log(sparseKeys); // ['0', '2']
console.log(denseKeys); // [0, 1, 2]
Llamando keys() en un objeto que no es un arreglo
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.
const arrayLike = {
length: 3,
};
for (const entry of Array.prototype.keys.call(arrayLike)) {
console.log(entry);
}
// 0
// 1
// 2
Especificaciones Compatibilidad con navegadores Véase también
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4