2016-08-23 5 views
3

Ich habe ein Hash-Objekt, wo die Schlüssel dynamisch durch Benutzerauswahl hinzugefügt werden.Wie iteriere ich über ein dynamisches Schlüsselobjekt?

Ich möchte darüber iterieren und extrahiere die Werte ähnlich wie ich es tun würde, wenn es einfach ein Array wäre: selections.map(cart => /*do stuff*/).

Wie kann ich das erreichen?

+0

erhalten die Schlüssel über dann den Wert des Schlüssels erhalten iterieren. –

+0

Iterate über die Schlüssel und Zugriff auf die Werte auf diese Weise? Bearbeiten: Geschlagen von @ LoïcFaure-Lacroix aha –

+0

Haben Sie 'for (var key in object) {...}' versucht? –

Antwort

3

Verwenden Object.keys()

Die Object.keys() Verfahren eine Anordnung von einem gegebenen Objekt eigener enumerable Eigenschaften zurückkehren, in der gleichen Reihenfolge wie die durch einen for...in Schleife vorgesehen (der Unterschied ist, dass ein für die-in-Schleife aufzählt Eigenschaften in der Prototypkette auch).

var array = Object.keys(selections).map(k => selections[k]); 
// get all values from the object 
+0

Gibt es ein neues Array zurück oder mutiert das Original? –

+0

'Object.keys' gibt ein neues Array zurück. Es mutiert das Objekt nicht. –

Verwandte Themen