JavaScriptのMapについて
JavaScriptのMapについての詳細解説
Mapの作成
JavaScriptの`Map`オブジェクトは、キーと値を一対で管理するコレクションです。`Map`を作成するには、以下のように`new Map()`を使用します。
const map = new Map();
また、初期化時に配列や他のMapオブジェクトを渡すこともできます。例えば、配列のペアで初期化する場合:
const map = new Map([['key1', 'value1'], ['key2', 'value2']]);
setメソッド
`set`メソッドは、Mapにキーとその値のペアを追加または更新します。
map.set('key1', 'value1');
同じキーを使って値を更新することもできます:
map.set('key1', 'new value');
getメソッド
`get`メソッドは、指定したキーに対応する値を取得します。キーが存在しない場合、`undefined`が返されます。
console.log(map.get('key1')); // 'new value'
キーが存在しない場合:
console.log(map.get('nonexistent')); // undefined
sizeプロパティ
`size`プロパティは、Mapに格納されているエントリの数を返します。
console.log(map.size); // 1
keysメソッド
`keys`メソッドは、Map内のすべてのキーを返す反復可能なオブジェクトを返します。
for (const key of map.keys()) {
console.log(key);
}
このコードは、Mapに保存されているすべてのキーを表示します。
valuesメソッド
`values`メソッドは、Map内のすべての値を返す反復可能なオブジェクトを返します。
for (const value of map.values()) {
console.log(value);
}
entriesメソッド
`entries`メソッドは、Map内のすべてのキーと値のペアを返す反復可能なオブジェクトを返します。各ペアは、[key, value]の形になります。
for (const [key, value] of map.entries()) {
console.log(key, value);
}
forEachメソッド
`forEach`メソッドは、Map内のすべてのキーと値に対して指定した関数を実行します。関数には、value、key、Map自体の3つの引数を渡すことができます。
map.forEach((value, key) => {
console.log(key, value);
});
hasメソッド
`has`メソッドは、指定したキーがMapに存在するかどうかを確認します。存在すれば`true`、存在しなければ`false`を返します。
console.log(map.has('key1')); // true
console.log(map.has('key3')); // false
deleteメソッド
`delete`メソッドは、指定したキーとその対応する値をMapから削除します。削除が成功すると`true`が返され、失敗すると`false`が返されます。
map.delete('key1'); // true
clearメソッド
`clear`メソッドは、Map内のすべてのエントリを削除します。
map.clear(); // Map内のすべてのエントリが削除されます。