2016-02-25 16 views
10

voglio recuperare le chiavi() dal seguente Immutabile Mappa:immutable.js ottenere le chiavi di mappa/hash

var map = Immutable.fromJS({"firstKey": null, "secondKey": null }); 
console.log(JSON.stringify(map.keys())); 

mi aspetterei l'uscita:

["firstKey", "secondKey"] 

Tuttavia queste uscite:

{"_type":0,"_stack":{"node":{"ownerID":{},"entries":[["firstKey",null],["secondKey",null]]},"index":0}} 

Come fare correttamente?

JSFiddle link: https://jsfiddle.net/o04btr3j/57/

risposta

25

Questo è il modo ImmutableJS oggetto assomiglia.

Se si desidera ottenere:

["firstKey", "secondKey"] 

quello che devi fare:

console.log(map.keySeq().toArray()) 
+2

È inoltre possibile utilizzare i generici 'tojs()' per convertire i tipi immutabili torna alla normalità oggetti js o array. – OlliM

12

Anche se questa domanda ottenuto ha risposto qualche tempo fa, ecco un piccolo aggiornamento:

ES6 Soluzione:

const [ ...keys ] = map.keys(); 

Pre ES6 Soluzione:

var keys = map.keySeq().toArray(); 
+0

Grande soluzione ES6 aggiornata! –

+1

ES6 è ES2015. Intendi pre-ES2015? – Druckles

+0

modificato. Grazie per averlo menzionato – lumio

Problemi correlati