ES6基礎之——Map

若是須要一個銘值對的結構,咱們能夠使用對象,每一個對象裏面能夠包含多個項目,每一個項目都有一個名字,還有一個跟它對應的值,不過使用對象會有一些限制,也可能會引發衝突,好比不能按使用對象來做爲項目的名字,如今咱們就能夠使用Map來組織這種銘值對的數據了。
建立一個Map,能夠使用new Map,例如:

 

let food = new Map();
console.log(food); //Map{}

   

如今裏面沒有東西是一個空白的Map

 

再定義幾個變量,而後把這幾個變量表示的東西做爲food這個Map裏面的key,也就是這個項目的名字;
往Map裏面添加方法用的是set方法,set方法有兩個參數,第一個參數就是key,也就是這個項目的名字,第二個參數是value,也就是參數的值
let food = new Map();
let fruit ={},cook=function(){},dessert="甜點";
food.set(fruit,'apple');
console.log(food); //Map{Object => {"apple"}}
key是一個對象,值是一個apple,key和value之間是箭頭

 

用相似的方法往food裏面添加兩個項目
let food = new Map();
let fruit ={},cook=function(){},dessert="甜點";
food.set(fruit,'apple');
food.set(cook,'fork');
food.set(dessert,'donut');
console.log(food); //Map{Object => {"apple"},function function=>"fork", "甜點"=>"donut"}

 

想要知道food裏面有多少個選項的話,能夠使用size這個屬性:
console.log(food.size); //3

 

使用Map裏面的項目的名字能夠獲得對應的值,須要使用的是get方法:
console.log(food.get(fruit)); //apple
console.log(food.get(cook)); //fork

 

刪除Map裏面的項目的話能夠使用delete方法:
food.delete(dessert);
console.log(food.has(dessert)); //false

 

循環處理Map裏面的東西能夠使用forEach方法:
food.forEach((key,value) =>{
  console.log('${key} = ${value}'); //[object object] = apple function cook(){} = fork
})

 

清空Map裏面的項目使用clear方法:
food.clear();
console.log(food); //Map{}
相關文章
相關標籤/搜索