JavaScriptマップ
マップは、キーが任意のデータ型であるキーと値のペアを保持します。
マップは、キーの元の挿入順序を記憶しています。
エッセンシャルマップメソッド
方法 | 説明 |
---|---|
新しいMap() | 新しいマップを作成します |
セットする() | マップ内のキーの値を設定します |
得る() | マップ内のキーの値を取得します |
消去() | キーで指定されたMap要素を削除します |
もっている() | キーがマップに存在する場合はtrueを返します |
forEach() | マップ内のキーと値のペアごとに関数を呼び出します |
エントリ() | マップ内の[key、value]ペアを持つイテレータを返します |
財産 | 説明 |
サイズ | マップ内の要素の数を返します |
マップの作成方法
JavaScriptマップは次の方法で作成できます。
- 配列をに渡す
new Map()
- マップを作成して使用する
Map.set()
新しいMap()メソッド
配列をnew Map()
コンストラクターに渡すことで、マップを作成できます。
例
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
set()メソッド
set()
次の方法でマップに要素を追加できます。
例
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
このset()
メソッドを使用して、既存のマップ値を変更することもできます。
例
fruits.set("apples", 200);
get()メソッド
このget()
メソッドは、マップ内のキーの値を取得します。
例
fruits.get("apples"); // Returns 500
サイズプロパティ
size
プロパティは、マップ内の要素の数を返します。
例
fruits.size;
delete()メソッド
このdelete()
メソッドは、Map要素を削除します。
例
fruits.delete("apples");
has()メソッド
has()
キーがマップに存在する場合、メソッドはtrueを返します。
例
fruits.has("apples");
これを試して:
fruits.delete("apples");
fruits.has("apples");
JavaScriptオブジェクトとマップ
JavaScriptオブジェクトとマップの違い:
物体 | 地図 | |
---|---|---|
反復可能 | 直接反復可能ではありません | 直接反復可能 |
サイズ | サイズプロパティはありません | サイズプロパティを持っている |
キータイプ | キーは文字列(または記号)である必要があります | キーは任意のデータ型にすることができます |
キーオーダー | キーの順序が正しくない | キーは挿入順に並べられます |
デフォルト | デフォルトのキーを持っている | デフォルトのキーはありません |
forEach()メソッド
このforEach()
メソッドは、マップ内のキーと値のペアごとに関数を呼び出します。
例
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
entries()メソッド
このentries()
メソッドは、マップ内の[key、values]を含むイテレータオブジェクトを返します。
例
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
ブラウザのサポート
JavaScriptマップは、InternetExplorerを除くすべてのブラウザでサポートされています。
Chrome | Edge | Firefox | Safari | Opera |