3
A
回答
1
socket.io(或任何傳輸機制)可能使用JSON作爲序列化格式。不幸的是,地圖和集合以及其他ES2015數據類型不能被JSON編碼。
let m = new Map([['one', 1], ['ten', 10], ['hundred', 100]]);
console.log(JSON.stringify(m));
// "{}"
這是非常不雅,但我轉換成一個陣列的陣列的服務器端,傳輸的是,並重新創建客戶端上的地圖:
let transitString = JSON.stringify(Array.from(m));
console.log(transitString)
// "[["one",1],["ten",10],["hundred",100]]"
var newMap = new Map(JSON.parse(transitString));
console.log(newMap)
// Map {"one" => 1, "ten" => 10, "hundred" => 100}
所以你的情況,我'd在服務器上執行io.emit('user_change', Array.from(users));
,並在客戶端上更改for
循環以使用映射:for (let user of (new Map(users)))
。
相關問題
- 1. 如何迭代immutable.js對象/ map/list
- 2. .MAP()的JavaScript對象
- 3. 從_.map()返回對象
- 4. Map對象,如果條件滿足
- 5. 如何在Hadoop MapReduce中將對象設置爲Map輸出的值?
- 6. Netty如何發送對象
- 7. 如何發佈opengraph對象
- 8. RestKit如何發佈對象
- 9. 如何發佈cocos2d對象?
- 10. 如何發佈此對象?
- 11. 如何列出json對象?
- 12. 對象輸入/輸出流。如何反覆發送更新的相同對象?
- 13. 如何處理map和unordered_map作爲同一個對象
- 14. 在scala中,如何將對象的值轉換爲Map [String,String]?
- 15. IvoryGoogleMapBundle:如何在渲染後訪問Google Map對象
- 16. 如何從ArayList創建JSON對象<Map <String,String >>?
- 17. 如何使用Map來調用對象的動作
- 18. 如何綁定到新的Set和Map對象?
- 19. 如何將客戶端的對象傳遞給Map和Reduce?
- 20. 如何通過guice注入一個Map對象?
- 21. 如何在yaml中定義map [string]對象?
- 22. 如何訪問此JavaScript MAP對象中的數據?
- 23. 如何構建一個Map Text文本對象?
- 24. 如何在ruby Array Map中構造一個對象?
- 25. 如何在map中序列化對象值的類型屬性?
- 26. 如何使用數組和map函數構建javascript對象?
- 27. 如何將會話對象轉換爲Map?
- 28. 如何從Google Map對象中隱藏公交車?
- 29. 如何在std :: map中插入自定義對象
- 30. 如何迭代從JsonSlurper.parse(JSONFile)返回的Map對象?