ES6核心語法整理筆記(四)set和map

在之前的文章中有涉及set和map的使用,但整理的不是很清晰。這裏做一個簡潔明瞭的說明。

set和map的特性

set是一種關聯式容器

  • set以RBTree作爲底層容器
  • 所得元素的只有key沒有value,value就是key
  • 不允許出現鍵值重複
  • 所有的元素都會被自動排序
  • 不能通過迭代器來改變set的值,因爲set的值就是鍵

map也是關聯式容器,它們的底層容器都是紅黑樹,區別就在於map的值不作爲鍵,鍵和值是分開的。

  • map以RBTree作爲底層容器
  • 所有元素都是鍵+值存在
  • 不允許鍵重複
  • 所有元素是通過鍵進行自動排序的
  • map的鍵是不能修改的,但是其鍵對應的值是可以修改的

具體應用

set

<script>
 const NumberSet=new Set();
 NumberSet.add(1);
 NumberSet.add(5);
 NumberSet.add(2);
 console.log(NumberSet)
</script>

【注意】new Set()的S大寫

  • add添加元素
  • delete刪除元素,看返回值是true或者false來判斷是否刪除成功
  • has判斷是否含有這個值
    在這裏插入圖片描述
    可以看見這裏添加“1”時,添加成功了
    在這裏插入圖片描述

map

 const cities = new Map();
 cities.set(1,"北京");
 cities.set(2,"上海");
 cities.set(3,"杭州");
 console.log(cities)

【注意】cities.set的s小寫
set添加元素
delete刪除
has判斷
在這裏插入圖片描述
可以隨意存放任意格式
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章