JavaScriptのMap(マップ)オブジェクトとは?基本的な使い方をサンプルコード付きで解説
Mapオブジェクトとは
Map(マップ)オブジェクトは、ES6(ECMAScript 2015)で導入された組み込みオブジェクトの一つで、「キー」と「値」のペアで構成される要素を管理するコレクションです。
通常のオブジェクトとよく似ていますが、Mapの大きな特徴は、キーにオブジェクトやプリミティブ値など、あらゆる型の値を使用できる点にあります。さらに、要素は挿入した順序で保持されるため、for...ofループなどを利用して、追加した順番どおりに反復処理を行うことも可能です。
Mapオブジェクトの主なメソッドとプロパティ
| メソッド / プロパティ | 説明 |
|---|---|
| new Map(iterable) | 配列などのイテラブルを元に、新しいMapオブジェクトを作成する |
| map.set(key, value) | 指定したキーと値のペアを追加する |
| map.get(key) | 指定したキーに対応する値を取得する |
| map.has(key) | 指定したキーが存在するかどうかを真偽値で返す |
| map.delete(key) | 指定したキーの要素を削除する |
| map.clear() | すべての要素を削除する |
| map.size | 格納されている要素の数を返すプロパティ |
サンプルコード
以下は、JavaScriptでMapオブジェクトを作成し、ボタンをクリックして内容を画面に表示するサンプルコードです。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
body {
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}
.result {
font-size: 18px;
font-weight: 500;
color: rebeccapurple;
}
</style>
</head>
<body>
<h1>Map object in JavaScript</h1>
<div class="result"></div>
<button class="Btn">CLICK HERE</button>
<h3>Click on the above button to create and display a map object</h3>
<script>
let resultEle = document.querySelector(".result");
let map1 = new Map([
["name", "Rohan Sharma"],
["age", 14],
["class", 9],
]);
document.querySelector(".Btn").addEventListener("click", () => {
for (let [key, value] of map1) {
resultEle.innerHTML += key + " = " + value + "<br>";
}
});
</script>
</body>
</html>実行結果
上記のコードをブラウザで実行すると、最初は次のように表示されます。

ここで「CLICK HERE」ボタンをクリックすると、Mapに格納されたキーと値のペアが、挿入した順序どおりに1行ずつ出力されます。

このように、new Map()にキーと値のペアを含む配列を渡すことで簡単に初期化でき、for...ofループで分割代入([key, value])を使えば、すべての要素を簡潔に取り出すことができます。キーに任意の型を使いたい場合や、挿入順序を保証したい場合には、Mapオブジェクトの活用が有効です。
-
JavaScriptのRegExp(正規表現)オブジェクトとは?基本の使い方をわかりやすく解説
RegExp(正規表現)オブジェクトは、テキストに対してパターンマッチングを行い、目的の文字列部分を検索・抽出するために使用されます。JavaScriptでは、RegExpオブジェクトを「RegExpコンストラクタ」または「リテラル構文」の2通りの方法で作成できます。 RegExpオブジェクトの作成方法 コンストラクタを使用する場合: new RegExp(pattern) リテラル構文を使用する場合: /pattern/ 主なメソッド test():文字列がパターンに一致するかどうかを真偽値(true / false)で返します。 exec():パターンに一致した文字列を返します。
-
JavaScriptのオブジェクト初期化子とは?使い方をサンプルコードで解説
オブジェクト初期化子とは オブジェクト初期化子(Object Initializer)は、新しく生成したオブジェクトを初期化するための式です。波括弧 {} の中に、「プロパティ名」と「それに対応する値」のペアを0個以上、カンマ区切りで列挙して記述します。 これにより、変数宣言と同時にオブジェクトの中身を簡単に定義することができます。 以下は、JavaScriptでオブジェクト初期化子を使用したサンプルコードです。 サンプルコード <!DOCTYPE html> <html lang="en"> <head> <meta chars