JavaScript -- Map數(shù)據(jù)結(jié)構(gòu)

2021-8-20    前端達(dá)人

什么是Map

Map和對(duì)象類似都是鍵值對(duì)的集合。

Map和對(duì)象的區(qū)別

對(duì)象一般用字符串當(dāng)鍵。

Map可以用數(shù)字、字符串、布爾值、null、undefined、數(shù)組、對(duì)象、Set、Map等做鍵。
在這里插入圖片描述

Map實(shí)例的屬性和方法

set()

向Map實(shí)例中添加新成員,可連續(xù)添加。
如果新成員的鍵已存在,那么新成員將會(huì)覆蓋以存在的鍵。
在這里插入圖片描述

get()

通過(guò)Map實(shí)例的鍵,來(lái)訪問(wèn)其對(duì)應(yīng)的值。

獲取不存在的成員返回undefined。
在這里插入圖片描述
在這里插入圖片描述

has()

通過(guò)Map實(shí)例的鍵,來(lái)判斷成員是否存在。
在這里插入圖片描述

delete()

刪除Map實(shí)例成員,刪除實(shí)例中不存在的成員不報(bào)錯(cuò)。
在這里插入圖片描述

clear()

清空Map實(shí)例成員。
在這里插入圖片描述

forEach()

遍歷Map實(shí)例成員,接收兩個(gè)參數(shù),第一個(gè)是一個(gè)回調(diào),回調(diào)接收三個(gè)參數(shù):value、key、Map。第二個(gè)參數(shù)是是this指向。
在這里插入圖片描述

size屬性

獲取Map成員個(gè)數(shù)。
在這里插入圖片描述

Map構(gòu)造函數(shù)

二維數(shù)組

在這里插入圖片描述

Set

Set必須體現(xiàn)出鍵和值。
在這里插入圖片描述

Map

Map作為參數(shù),傳入構(gòu)造函數(shù),相當(dāng)于Map實(shí)例的克隆。
在這里插入圖片描述

Map注意事項(xiàng)

Map對(duì)于重復(fù)鍵的判斷基本遵循 ===,但在Map中NaN ===NaN。

Map的應(yīng)用

操作DOM

 <p>1</p> <p>2</p> <script> const [p1,p2] = document.querySelectorAll('p'); const m = new Map([ [p1,'red'], [p2,'blue'] ]); m.forEach((color, elem) => { elem.style.color = color }) </script> 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在這里插入圖片描述

藍(lán)藍(lán)設(shè)計(jì)建立了UI設(shè)計(jì)分享群,每天會(huì)分享國(guó)內(nèi)外的一些優(yōu)秀設(shè)計(jì),如果有興趣的話,可以進(jìn)入一起成長(zhǎng)學(xué)習(xí),請(qǐng)掃碼ben_lanlan,報(bào)下信息,會(huì)請(qǐng)您入群。歡迎您加入噢~~希望得到建議咨詢、商務(wù)合作,也請(qǐng)與我們聯(lián)系。

文章來(lái)源:csdn

分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責(zé)聲明:藍(lán)藍(lán)設(shè)計(jì)尊重原作者,文章的版權(quán)歸原作者。如涉及版權(quán)問(wèn)題,請(qǐng)及時(shí)與我們?nèi)〉寐?lián)系,我們立即更正或刪除。

藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)


分享本文至:

日歷

鏈接

個(gè)人資料

存檔