JavaScript: Mapの使い方

2022.6.4
Dev

生成

const m1 = new Map([['a', 1], ['b', 2], ['c', 3]]);
// => { 'a' => 1, 'b' => 2, 'c' => 3 }

要素数を取得

const m2 = new Map([['a', 1], ['b', 2], ['c', 3]]);
m2.size; // => 3

値を取得

const m3 = new Map([['a', 1], ['b', 2], ['c', 3]]);
m3.get('a'); // => 1

値を設定

const m4 = new Map([['a', 1], ['b', 2], ['c', 3]]);
m4.set('d', 4);
m4.set('e', 5);
m4; // => { 'a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5 }

要素の存在を調べる

const m5 = new Map([['a', 1], ['b', 2], ['c', 3]]);
m5.has('a'); // => true
m5.has('d'); // => false

要素を削除

const m6 = new Map([['a', 1], ['b', 2], ['c', 3]]);
m6.delete('b');
m6; // => { 'a' => 1, 'c' => 3 }

全ての要素を削除

const m7 = new Map([['a', 1], ['b', 2], ['c', 3]]);
m7.clear();
m7; // => {}

forによるイテレート

const m8 = new Map([['a', 1], ['b', 2], ['c', 3]]);

for (const [key, value] of m8) {
  m8.set(key, value * 2);
}

m8; // => { 'a' => 2, 'b' => 4, 'c' => 6 }