Array.prototype.entries()

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.

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

Probieren Sie es aus

const array1 = ["a", "b", "c"];

const iterator1 = array1.entries();

console.log(iterator1.next().value);
// Expected output: Array [0, "a"]

console.log(iterator1.next().value);
// Expected output: Array [1, "b"]

Syntax

js
entries()

Parameter

Keine.

Rückgabewert

Beschreibung

Wenn die Methode für lückenhafte Arrays verwendet wird, iteriert die Methode entries() über leere Slots, als hätten sie den Wert undefined.

Die Methode entries() ist generisch. Sie erwartet nur, dass der this-Wert eine length-Eigenschaft und ganzzahlschlüsselige Eigenschaften hat.

Beispiele

Iterieren mit Index und Element

js
const a = ["a", "b", "c"];

for (const [index, element] of a.entries()) {
  console.log(index, element);
}

// 0 'a'
// 1 'b'
// 2 'c'

Verwendung einer for...of-Schleife

js
const array = ["a", "b", "c"];
const arrayEntries = array.entries();

for (const element of arrayEntries) {
  console.log(element);
}

// [0, 'a']
// [1, 'b']
// [2, 'c']

Iterieren über lückenhafte Arrays

entries() behandelt leere Slots, als wären sie undefined.

js
for (const element of [, "a"].entries()) {
  console.log(element);
}
// [0, undefined]
// [1, 'a']

Aufruf von entries() bei Nicht-Array-Objekten

Die Methode entries() liest die length-Eigenschaft von this und greift dann auf jede Eigenschaft zu, deren Schlüssel eine nicht negative Ganzzahl kleiner als length ist.

js
const arrayLike = {
  length: 3,
  0: "a",
  1: "b",
  2: "c",
  3: "d", // ignored by entries() since length is 3
};
for (const entry of Array.prototype.entries.call(arrayLike)) {
  console.log(entry);
}
// [ 0, 'a' ]
// [ 1, 'b' ]
// [ 2, 'c' ]

Spezifikationen

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

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch