JavaScriptのmapオブジェクトのset()メソッドについて記載します。
概要、実際のサンプルコードを交えて構文などの使い方をまとめてみました。
JavaScriptのMapオブジェクトとは?
キー(key)とキーに対応する値(value)を対応させて保持するオブジェクトで、Setオブジェクトと併せて、ES6(ES2015)から追加された比較的新しいデータタイプです。
配列に似ており、Javascript でデータを扱う上でよく使うデータ型として知られています。
またJSのオブジェクト型とも非常に似ておりますが、文字列や数値、真偽値(Boolean)をキーとなる値に対して自由に設定できる違いがあります。
JS,TypeScript,Node.jsなどで開発していくうえで重要なデータタイプとなっています。
それでは、次に本題の説明に移ります。
JavaScriptのmapオブジェクトのset()概要
mapオブジェクトのset()メソッドは、指定したキーと値をマップに追加します。
構文、使い方
mapオブジェクトのset()の構文:
map.set(key, value)
使い方:
mapオブジェクトにキーと値を設定するために使用します。
キーと値を指定して、mapオブジェクトに新しいエントリを追加します。
引数について
set()メソッドは、mapオブジェクトにキーと値のペアを追加します。
引数として、キーと値を指定します。
返り値について
set()メソッドは、mapオブジェクトに新しい要素を追加します。
返り値は、追加したmapオブジェクト自身です。
このメソッドを利用した便利なテクニック
mapオブジェクトのset()を使うと、オブジェクトのキーと値を関連付けることができます。
これを使うと、オブジェクトのプロパティを効率的に管理したり、オブジェクトの値を効率的に検索したりすることができます。
現場で実際にどのように使われているか
mapオブジェクトのset()は、キーと値のペアをマップオブジェクトに追加するために使用されます。
例えば、以下のようなコードを使用して、キー「name」と値「John」をマップオブジェクトに追加することができます。
1 2 |
let myMap = new Map(); myMap.set('name', 'John'); |
JavaScriptのmapオブジェクトのset()と一緒によく使われる処理
get()というメソッドと一緒に使われることが多いです。
mapオブジェクトのset()は、キーと値を関連付けるために使用されます。
get()は、特定のキーに関連付けられた値を取得するために使用されます。
使用する上での注意点
・mapオブジェクトのset()は、キーと値のペアをmapオブジェクトに追加するために使用します。
・キーと値のペアは、同じキーを使用して複数回set()を呼び出しても、最後の呼び出しのみが有効となります。
JavaScriptのmapオブジェクトのset()と似た処理のJSメソッド、違い
処理の内容としては、Object.assign()と似ていますが、下記の違いがあります。
- Object.assign()は、1つ以上のソースオブジェクトからターゲットオブジェクトにプロパティをコピーします。
- Map.set()は、指定したキーと値をMapオブジェクトに追加します。
JavaScriptのmapオブジェクトのset()を使ったサンプルコードの紹介
mapオブジェクトのset()の使ったサンプルコード1
1 2 3 4 |
let myMap = new Map(); myMap.set('name', 'John'); myMap.set('age', 25); console.log(myMap); |
mapオブジェクトのset()の使ったサンプルコード2
1 2 3 4 5 |
let myMap = new Map(); myMap.set('name', 'John'); myMap.set('age', 25); myMap.set('hobby', 'soccer'); console.log(myMap); |
JavaScript mapオブジェクトの他メソッドについて
JavaScriptのmapオブジェクトの他メソッドについては、下記記事にもまとめていますので参考にしてみてください
メソッド名 | 機能 | リンク |
map new Map() | 新しいマップオブジェクトを作成します | JavaScript mapオブジェクト newMapメソッドの使い方 |
map.prototype.set() | マップ内のキーの値を設定します | JavaScript mapオブジェクト setメソッドの使い方 |
map.prototype.get() | マップ内のキーの値を取得します | JavaScript mapオブジェクト getメソッドの使い方 |
map.prototype.clear() | マップからすべての要素を削除します | JavaScript mapオブジェクト clearメソッドの使い方 |
map.prototype.delete() | キーで指定されたマップ要素を削除します | JavaScript mapオブジェクト deleteメソッドの使い方 |
map.prototype.has() | キーがマップに存在する場合、trueを返します | JavaScript mapオブジェクト hasメソッドの使い方 |
map.prototype.forEach() | マップ内の各キー/値ペアのコールバックを呼び出す | JavaScript mapオブジェクト foreachメソッドの使い方 |
map.prototype.entries() | マップ内の[key、value]ペアを持つイテレーターオブジェクトを返します | JavaScript mapオブジェクト entriesメソッドの使い方 |
map.prototype.keys() | マップ内にキーを含むイテレーターオブジェクトを返します | JavaScript mapオブジェクト keysメソッドの使い方 |
map.prototype.values() | マップ内の値のイテレーターオブジェクトを返します | JavaScript mapオブジェクト valuesメソッドの使い方 |
map size property | マップ要素の数を返します | JavaScript mapオブジェクト sizeプロパティの使い方 |
また、JavaScriptの公式ドキュメントであるMDNで記載されているmapオブジェクトのsetメソッドについても補足としてリンクを貼っておきます。
参考にしてみてください。