一. 簡介:
- Map是一個(gè)類似于對象的數(shù)據(jù)類型
- 與常規(guī)對象和Array不同的是,它是“鍵控集合“
- 它的行為有稍許不同,并且在特定的上下文中使用,它可以提供相當(dāng)大的性能優(yōu)勢
二. 案例
1. 定義Map
- 語法一:構(gòu)造函數(shù)--聲明時(shí)賦值
????????參數(shù):a. 必須是二維數(shù)組, b.二維數(shù)組 Map單元格是 鍵值對 的形式
const person = new Map([ ['name', '秋風(fēng)落葉'], ['age', 27], ['sex', '男'] ])
??結(jié)果展示:
?
- ?語法二:構(gòu)造函數(shù)--聲明后再賦值
?????????書寫方式:Map對象.set(鍵名 , 數(shù)值)
const person = new Map()
person.set('name', '秋風(fēng)落葉')
???結(jié)果展示:
?2. 獲取Map數(shù)據(jù)
語法形式:Map數(shù)據(jù)類型.get(‘鍵名’)? ==>??person.get(‘name’)
const person = new Map([ ['name', '秋風(fēng)落葉'], ['age', 27], ['sex', '男'] ])
// 獲取
person.get('name') // 秋風(fēng)落葉
?3. 刪除Map中指定數(shù)據(jù)
語法形式:Map數(shù)據(jù)類型.delete(‘鍵名’) ==>? person.delete(‘name’);
const person = new Map([ ['name', '秋風(fēng)落葉'], ['age', 27], ['sex', '男'] ])
person.delete('sex')
?結(jié)果展示:
4. 清除Map中所有數(shù)據(jù)
語法形式:Map數(shù)據(jù)類型.clear()? ==>?person.clear();
const person = new Map([ ['name', '秋風(fēng)落葉'], ['age', 27], ['sex', '男'] ])
person.clear()
結(jié)果展示:
?5. 判斷是否是Map中的數(shù)據(jù)
語法形式:Map數(shù)據(jù)類型.has(‘鍵名’)
const person = new Map([ ['name', '秋風(fēng)落葉'], ['age', 27], ['sex', '男'] ])
person.has('name') // true
person.has('aa') // false
6. 遍歷Map
const person = new Map([ ['name', '秋風(fēng)落葉'], ['age', 27], ['sex', '男'] ])
person.forEach((item, key) => {
console.info(item, key)
})
結(jié)果展示:
?文章來源地址http://www.zghlxwxcb.cn/news/detail-458548.html
三. 簡單實(shí)戰(zhàn)
const fruitColor = new Map()
.set('red', ['apple', 'strawberry'])
.set('yellow', ['banana', 'pineapple'])
.set('purple', ['grape', 'plum']);
function printFruits(color) {
return fruitColor.get(color) || [];
}
// 調(diào)用
printFruits('red')
結(jié)果展示:
文章來源:http://www.zghlxwxcb.cn/news/detail-458548.html
?
到了這里,關(guān)于ES6 new Map() 的用法的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!