サーチ…
構文
- 新しいマップ([iterable])
- map.set(key、value)
- map.get(key)
- map.size
- map.clear()
- map.delete(キー)
- map.entries()
- map.keys()
- map.values()
- map.forEach(コールバック[、thisArg])
パラメーター
| パラメータ | 詳細 | 
|---|---|
| iterable | [key, value]ペアを含む反復可能オブジェクト(配列など)。 | 
| key | 要素のキー。 | 
| value | キーに割り当てられた値。 | 
| callback | value、key、mapの3つのパラメータで呼び出されるコールバック関数。 | 
| thisArg | callback実行するときにthisとして使用される値。 | 
備考
地図でNaNと同じであると考えられているNaNにもかかわらず、 NaN !== NaN 。例えば: 
const map = new Map([[NaN, true]]);
console.log(map.get(NaN)); // true
マップの作成
マップは、キーと値の基本的なマッピングです。マップは、文字列や記号だけでなく、キーが何か(プリミティブ値やオブジェクト)でもかまいません。マップ上の反復は、アイテムがマップに挿入された順番で常に行われますが、オブジェクト内のキーを反復処理するときは順序は未定義です。
マップを作成するには、Mapコンストラクタを使用します。
const map = new Map();
オプションのパラメータを持ちます。これは、2つの要素の配列を含む反復可能オブジェクト(配列など)です。最初はキー、秒は値です。例えば:
const map = new Map([[new Date(), {foo: "bar"}], [document.body, "body"]]);
//                      ^key          ^value          ^key        ^value
マップのクリア
マップからすべての要素を削除するには、 .clear()メソッドを使用します。 
map.clear();
例:
const map = new Map([[1, 2], [3, 4]]);
console.log(map.size); // 2
map.clear();
console.log(map.size); // 0
console.log(map.get(1)); // undefined
マップから要素を削除する
マップから要素を削除するには、 .delete()メソッドを使用します。 
map.delete(key);
例:
const map = new Map([[1, 2], [3, 4]]);
console.log(map.get(3)); // 4
map.delete(3);
console.log(map.get(3)); // undefined
このメソッドは、要素が存在し、削除されている場合はtrue返し、それ以外の場合はfalse返しtrue 。 
const map = new Map([[1, 2], [3, 4]]);
console.log(map.delete(1)); // true
console.log(map.delete(7)); // false
マップにキーが存在するかどうかを確認する
マップにキーが存在するかどうかを確認するには、 .has()メソッドを使用します。 
map.has(key);
例:
const map = new Map([[1, 2], [3, 4]]);
console.log(map.has(1)); // true
console.log(map.has(2)); // false
イテレートマップ
 Mapにはイテレータを返す3つのメソッドがあります: .keys() .values() .entries() 。 .entries()はデフォルトのMapイテレータであり、 [key, value]ペアを含みます。 
const map = new Map([[1, 2], [3, 4]]);
for (const [key, value] of map) {
  console.log(`key: ${key}, value: ${value}`);
  // logs:
  // key: 1, value: 2
  // key: 3, value: 4
}
for (const key of map.keys()) {
  console.log(key); // logs 1 and 3
}
for (const value of map.values()) {
  console.log(value); // logs 2 and 4
}
 Mapには.forEach()メソッドもあります。最初のパラメータはマップの各要素に対して呼び出されるコールバック関数で、2番目のパラメータはコールバック関数の実行時にthis値として使用される値です。 
コールバック関数には、value、key、mapオブジェクトという3つの引数があります。
const map = new Map([[1, 2], [3, 4]]);
map.forEach((value, key, theMap) => console.log(`key: ${key}, value: ${value}`));
// logs:
// key: 1, value: 2
// key: 3, value: 4
要素の取得と設定
使用.get(key)キーとすることで値を取得するために.set(key, value)のキーに値を代入します。 
指定されたキーを持つ要素がマップに存在しない場合、 .get()はundefined返します。 
 .set()メソッドはmapオブジェクトを返すので、 .set()呼び出しをチェーンすることができます。 
const map = new Map();
console.log(map.get(1)); // undefined
map.set(1, 2).set(3, 4);
console.log(map.get(1)); // 2
マップの要素数の取得
マップの要素数を取得するには、 .sizeプロパティを使用します。 
const map = new Map([[1, 2], [3, 4]]);
console.log(map.size); // 2