Array.prototype.entries()
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Die Methode entries() von Array-Instanzen gibt ein neues Array-Iterator-Objekt zurück, das für jeden Index im Array ein Schlüssel-Wert-Paar enthält.
Probieren Sie es aus
const array = ["a", "b", "c"];
const iterator = array.entries();
console.log(iterator.next().value);
// Expected output: Array [0, "a"]
console.log(iterator.next().value);
// Expected output: Array [1, "b"]
Syntax
entries()
Parameter
Keine.
Rückgabewert
Ein neues iterierbares Iterator-Objekt.
Beschreibung
Bei Arrays mit Lücken behandelt die Methode entries() leere Positionen bei der Iteration so, als hätten sie den Wert undefined.
Die Methode entries() ist generisch. Sie setzt lediglich voraus, dass der Wert von this eine length-Eigenschaft und Eigenschaften mit ganzzahligen Schlüsseln hat.
Beispiele
>Über Index und Element iterieren
const a = ["a", "b", "c"];
for (const [index, element] of a.entries()) {
console.log(index, element);
}
// 0 'a'
// 1 'b'
// 2 'c'
Eine for...of-Schleife verwenden
const array = ["a", "b", "c"];
const arrayEntries = array.entries();
for (const element of arrayEntries) {
console.log(element);
}
// [0, 'a']
// [1, 'b']
// [2, 'c']
Über Arrays mit Lücken iterieren
entries() berücksichtigt leere Positionen so, als hätten sie den Wert undefined.
for (const element of [, "a"].entries()) {
console.log(element);
}
// [0, undefined]
// [1, 'a']
entries() für Objekte aufrufen, die keine Arrays sind
Die Methode entries() liest die length-Eigenschaft von this und greift dann auf jede Eigenschaft zu, deren Schlüssel eine nicht negative ganze Zahl kleiner als length ist.
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
| Spezifikation |
|---|
| ECMAScript® 2027 Language Specification> # sec-array.prototype.entries> |