javascriptの組み込みオブジェクト「Map」「Set」

Map

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Map
オブジェクトで代用していたものを、より適切に実装したキー・値ペアを保存するオブジェクト。

let map = new Map();

map.set("key1", 1);
map.set("key2", 2);
map.set("key3", 3);

console.log(map.get("key1")); // -> 1
console.log(map.has("key1")); // -> true
console.log(map.size);        // -> 3

map.delete("key1");

for (let [key, val] of map) { console.log(key, val); }
map.forEach((key, val) => { console.log(key, val) });

map.clear();

Set

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Set
ユニークな値を格納する配列のようなもの。重複した値を格納しようとした場合、何も起きない。順序は格納順。

let set = new Set();

set.add(1);
set.add(2);
set.add(3);
set.add(2); // 無視

console.log(set.has(1)); // -> true
console.log(set.size);   // -> 3

set.delete(1);

for (let item of set) { console.log(item); }
set.forEach(item => { console.log(item) });

set.clear();