Array.prototype.keys()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since May 2018.

We'd love to hear more about your role and the company you work for
Please help us by answering a few questions.

Die keys()-Methode von Array-Instanzen gibt ein neues Array-Iterator-Objekt zurück, das die Schlüssel für jeden Index im Array enthält.

Probieren Sie es aus

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

Syntax

js
keys()

Parameter

Keine.

Rückgabewert

Beschreibung

Wenn die Methode auf Sparsame Arrays angewendet wird, iteriert die keys()-Methode über leere Plätze, als hätten sie den Wert undefined.

Die keys()-Methode ist generisch. Sie erwartet nur, dass der this-Wert eine length-Eigenschaft und ganzzahlig indizierte Eigenschaften hat.

Beispiele

Verwendung von keys() auf sparsamen Arrays

Im Gegensatz zu Object.keys(), das nur Schlüssel enthält, die tatsächlich im Array existieren, ignoriert der keys()-Iterator keine Lücken, die fehlende Eigenschaften darstellen.

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

Aufruf von keys() bei Nicht-Array-Objekten

Die keys()-Methode liest die length-Eigenschaft von this und liefert dann alle ganzzahligen Indizes zwischen 0 und length - 1. Kein Indexzugriff erfolgt tatsächlich.

js
const arrayLike = {
  length: 3,
};
for (const entry of Array.prototype.keys.call(arrayLike)) {
  console.log(entry);
}
// 0
// 1
// 2

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-array.prototype.keys

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
keys

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch