ES6基本數據結構Set和Map

此篇博客僅做筆記使用

  1. Set結構
  • 向 Set 加入值的時候,不會發生類型轉換,所以5和"5"是兩個不同的值。Set 內部判斷兩個值是否不同,使用的算法叫做“Same-value-zero equality”,它類似於精確相等運算符(===),主要的區別是向 Set 加入值時認爲NaN等於自身,而精確相等運算符認爲NaN不等於自身。
  • Set函數可以接受一個數組(或者具有 iterable 接口的其他數據結構)作爲參數,用來初始化。
    Set.prototype.keys():返回鍵名的遍歷器
    Set.prototype.values():返回鍵值的遍歷器
    Set.prototype.entries():返回鍵值對的遍歷器
    Set.prototype.forEach():使用回調函數遍歷每個成員
  1. Map結構
  • ES6 提供了 Map 數據結構。它類似於對象,也是鍵值對的集合,但是“鍵”的範圍不限於字符串,各種類型的值(包括對象)都可以當作鍵。也就是說,Object 結構提供了“字符串—值”的對應,Map 結構提供了“值—值”的對應,是一種更完善的 Hash 結構實現。如果你需要“鍵值對”的數據結構,Map 比 Object 更合適。
  • Map 也可以接受一個數組作爲參數。該數組的成員是一個個表示鍵值對的數組。
    Map 結構原生提供三個遍歷器生成函數和一個遍歷方法。
    Map.prototype.keys():返回鍵名的遍歷器。
    Map.prototype.values():返回鍵值的遍歷器。
    Map.prototype.entries():返回所有成員的遍歷器。
    Map.prototype.forEach():遍歷 Map 的所有成員。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章