Map.prototype[@@iterator]()

Der initialewert der @@iterator Eigenschaft enthält das selbe Funktionsobjekt wie der Wert in der entries Methode.

Syntax

myMap[Symbol.iterator]

Rückgabewert

Die iterator Funktion von map ist im Standardfall die entries() Funktion.

Beispiele

Einsatz von [@@iterator]()

const myMap = new Map();
myMap.set('0', 'foo');
myMap.set(1, 'bar');
myMap.set({}, 'baz');

const mapIter = myMap[Symbol.iterator]();

console.log(mapIter.next().value); // ["0", "foo"]
console.log(mapIter.next().value); // [1, "bar"]
console.log(mapIter.next().value); // [Object, "baz"]

Einsatz von [@@iterator]() mit for..of

const myMap = new Map();
myMap.set('0', 'foo');
myMap.set(1, 'bar');
myMap.set({}, 'baz');

for (const entry of myMap) {
  console.log(entry);
}
// ["0", "foo"]
// [1, "bar"]
// [{}, "baz"]

for (const [key, value] of myMap) {
  console.log(`${key}: ${value}`);
}
// 0: foo
// 1: bar
// [Object]: baz

Spezifikationen

Spezifikation Status Kommentar
ECMAScript 2015 (6th Edition, ECMA-262)
Die Definition von 'Map.prototype[@@iterator]()' in dieser Spezifikation.
Standard Initiale Definition.
ECMAScript (ECMA-262)
Die Definition von 'Map.prototype[@@iterator]()' in dieser Spezifikation.
Lebender Standard  

Browserkompatibilität

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid WebviewChrome für AndroidFirefox für AndroidOpera für AndroidSafari auf iOSSamsung InternetNode.js
@@iteratorChrome Vollständige Unterstützung 43Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 36
Vollständige Unterstützung 36
Keine Unterstützung 27 — 36
Hinweise Alternativer Name
Hinweise A placeholder property named @@iterator is used.
Alternativer Name Verwendet den nicht standardisierten Namen: @@iterator
Keine Unterstützung 17 — 27
Hinweise Alternativer Name
Hinweise A placeholder property named iterator is used.
Alternativer Name Verwendet den nicht standardisierten Namen: iterator
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 30Safari Vollständige Unterstützung 10WebView Android Vollständige Unterstützung 43Chrome Android Vollständige Unterstützung 43Firefox Android Vollständige Unterstützung 36
Vollständige Unterstützung 36
Keine Unterstützung 27 — 36
Hinweise Alternativer Name
Hinweise A placeholder property named @@iterator is used.
Alternativer Name Verwendet den nicht standardisierten Namen: @@iterator
Keine Unterstützung 17 — 27
Hinweise Alternativer Name
Hinweise A placeholder property named iterator is used.
Alternativer Name Verwendet den nicht standardisierten Namen: iterator
Opera Android Vollständige Unterstützung 30Safari iOS Vollständige Unterstützung 10Samsung Internet Android Vollständige Unterstützung 4.0nodejs Vollständige Unterstützung 0.12

Legende

Vollständige Unterstützung  
Vollständige Unterstützung
Keine Unterstützung  
Keine Unterstützung
Siehe Implementierungshinweise.
Siehe Implementierungshinweise.
Verwendet einen nicht standardisierten Namen.
Verwendet einen nicht standardisierten Namen.

Siehe auch