ES6 Map物件與Set物件

2022-05-12 20:10:28 字數 2286 閱讀 5708

map 物件儲存鍵值對。任何值(物件或者原始值) 都可以作為乙個鍵或乙個值。

乙個 object 的鍵只能是字串或者 symbols,但乙個 map 的鍵可以是任意值:字串、物件、函式、nan

var mymap = new

map();

var keystring = "0";

mymap.set(keystring, "zero");

mymap.get(keystring);

//"字串"

mymap.get("0"); //

"字串"

因為 keystring === 'a string'

map.has(obj) // false

map.delete(obj) // true

//再加乙個

mymap.set("1", "one");

mymap.size;//2獲取數量

varoutarray= array.from(mymap);//[["0","zero"],["1","one"]]  map物件轉化為陣列,可以看出outarray是乙個二維陣列,可以通過outarray[0][0] 訪問具體值

例項:判斷有效的括號
var isvalid = function

(s)

const pairs = new

map([

[')', '('],

[']', '['],

['}', '

stk.pop();

} else

});return !stk.length;

};

遍歷map方式:

var mymap = new

map();

mymap.set(0, "zero");

mymap.set(1, "one"); //

遍歷map

for (var

[key, value] of mymap)

mymap.entries();//返回iterator 物件,包含了 map 物件中每個元素的 [key, value] 陣列。

//iterator物件:是乙個引用型變數,為了遍歷容器物件中的元素而不暴露容器物件內部的細節

mymap.keys()

;//返回iterator 物件,包含了 map 物件中每個元素的key。

//for(var key of mymap.keys())

mymap.values();//

返回iterator 物件,包含了 map 物件中每個元素的value。

//

將會顯示兩個 logs。 乙個是 "0 = zero" 另乙個是 "1 = one"

mymap.foreach(function

(value, key) , mymap)

set 物件允許你儲存任何型別的唯一值,無論是原始值或者是物件引用。

let myset = new

set();

myset.add(1); //

set(1)

myset.add(5); //

set(2)

myset.add(5); //

set(2) 這裡體現了值的唯一性

myset

.add("

some text")

; // set(3)

set物件作用

1、陣列去重

var myset = new set([1, 2, 3, 4, 4]);

[...myset];

//[1, 2, 3, 4] 直接輸出myset,是set物件。

2、並集

var a = new set([1, 2, 3]);

var b = new set([4, 3, 2]);

var union = new set([...a, ...b]); //

set(4)

varmyarray= [

...union

];//[1,2,3,4] 陣列與set物件互相轉換的方法

3、交集、差集(略)

學習原文

ES6 Map集合使用

ecmascript6中的map集合 map型別是一種儲存著許多鍵值對的有序列表,其中鍵名和鍵值支援所有的資料型別 鍵名的判斷是通過呼叫 object.is 方法實現的,所以 5 和 5 被判斷為兩個型別 let map new map map.set name song document.writ...

es6 map常用方法

es6 map常用方法總結 1.map 結構轉為陣列結構 比較快速的方法是結合使用擴充套件運算子 let map new map 1,one 2,two 3,three map.keys 1,2,3 map.values one two three map.entries 1,one 2,two 3...

es6 map 遍歷 筆記

let arr1 1 2,3 let arr2 arr1.map value,key,arr console.log arr1 1,2,3 console.log arr2 1,4,9 map 方法 map,對映,即原陣列對映成乙個新的陣列 map方法接受乙個新引數,這個引數就是將原陣列變成新陣列的...