Vorrei iniziare a utilizzare ES6 Map invece di oggetti JS ma sono trattenuto perché non riesco a capire come JSON.stringify() una mappa. Le mie chiavi sono garantite come stringhe e i miei valori saranno sempre liste. Devo davvero scrivere un metodo wrapper per serializzare?Come si JSON.stringify una mappa ES6?
risposta
Non è possibile.
Le chiavi di una mappa possono essere qualsiasi cosa, inclusi gli oggetti. Ma la sintassi JSON consente solo le stringhe come chiavi. Quindi è impossibile in un caso generale.
mie chiavi sono garantiti per essere le stringhe ed i miei valori saranno sempre gli elenchi
In questo caso, è possibile utilizzare un oggetto semplice. Avrà questi vantaggi:
- Sarà possibile eseguire l'installazione su JSON.
- Funzionerà con i browser più vecchi.
- Potrebbe essere più veloce.
per i curiosi: nell'ultima versione di Chrome, qualsiasi mappa viene serializzata in "{}" – Capaj
Ho spiegato [qui] (http://stackoverflow.com/a/35078054/1529630) che cosa intendevo esattamente quando ho detto "puoi 't". – Oriol
"Potrebbe essere più veloce" - Avete qualche fonte su questo? Immagino che una semplice mappa hash deve essere più veloce di un oggetto in piena regola, ma non ho prove. :) – Lilleman
- 1. Creazione di una classe che si estende da ES6 Mappa
- 2. ES6 Mappa in tipografico
- 3. Come i ES6 Mappa degli shim
- 4. .map() a Javascript ES6 Mappa?
- 5. Javascript ES6 - mappa più array
- 6. Superficiale-clonazione di una mappa ES6 o Set
- 7. C'è un modo per bloccare una mappa ES6?
- 8. Utilizzo di oggetti Array come chiave per ES6 Mappa
- 9. JSON.stringify ritorno []
- 10. JSON.stringify (undefined) non è una stringa
- 11. JSON.stringify (oggetto) non corretta
- 12. JSON.stringify() non fuggire apostrofo
- 13. JSON.stringify oggetti profondi
- 14. LocalStorage e JSON.stringify JSON.parse
- 15. jquery equivalente per JSON.stringify
- 16. Come inizializzare una mappa in ES6/ES2015 simile a un'espressione Oggetto?
- 17. Come copiare una mappa?
- 18. Spazio tra l'output JSON.stringify
- 19. JSON.stringify rispetto a serializzazione
- 20. Come si fa una mappa normale in THREE.js correttamente?
- 21. Come si converte un elenco di numeri in una mappa?
- 22. JavaScript ha una notazione letterale Mappa?
- 23. Come serializzare una mappa di una mappa con GSON?
- 24. Come disegnare una mappa mentale
- 25. Come disinserire una costante Javascript in ES6?
- 26. secondo argomento JSON.stringify in JavaScript
- 27. Cosa succede con JSON.stringify (argomenti)?
- 28. Javascript + JsDoc: come documentare nuovi tipi di dati ES6 come la mappa?
- 29. Electron & ES6 come implementare richiedono remoto/IPC quando si utilizzano moduli Gulp e ES6
- 30. JSON.stringify e "\ u2028 \ u2029" controllare?
Curioso sul motivo per cui questo è stato downvoted? 'JSON.stringify' non funziona su una mappa, almeno quando si utilizzano versioni di Chrome e FF con margini sanguinanti, quindi sembra una domanda legittima. –
ya duno perché il downvote. Non funziona su io.js 1.4.1 o – rynop
"* Le mie chiavi sono garantite come stringhe ei miei valori saranno sempre elenchi *". Quindi usa un oggetto semplice, non una mappa. – Oriol