JavaScriptのmapオブジェクトのclear()メソッドについて記載します。
概要、実際のサンプルコードを交えて構文などの使い方をまとめてみました。
JavaScriptのMapオブジェクトとは?
キー(key)とキーに対応する値(value)を対応させて保持するオブジェクトで、Setオブジェクトと併せて、ES6(ES2015)から追加された比較的新しいデータタイプです。
配列に似ており、Javascript でデータを扱う上でよく使うデータ型として知られています。
またJSのオブジェクト型とも非常に似ておりますが、文字列や数値、真偽値(Boolean)をキーとなる値に対して自由に設定できる違いがあります。
JS,TypeScript,Node.jsなどで開発していくうえで重要なデータタイプとなっています。
それでは、次に本題の説明に移ります。
JavaScriptのmapオブジェクトのclear()概要
mapオブジェクトのclear()は、mapオブジェクトからすべての要素を削除するためのメソッドです。
構文、使い方
mapオブジェクトのclear()の構文:
1 |
map.clear(); |
使い方:
mapオブジェクトの全ての要素を削除します。
引数について
clear()には引数はありません。
返り値について
clear()は何も返り値を持たない関数です。
このメソッドを利用した便利なテクニック
mapオブジェクトのclear()を使うと、オブジェクト内のすべてのキーと値を削除することができます。
これは、オブジェクトの中身を簡単にリセットするための便利なテクニックです。
現場で実際にどのように使われているか
mapオブジェクトのclear()は、mapオブジェクト内の全てのキーと値を削除するために使用されます。
例えば、以下のようなコードがあるとします。
1 2 3 4 5 6 |
var map = new Map(); map.set('foo', 'bar'); map.set('baz', 'qux'); // 全てのキーと値を削除する map.clear(); |
JavaScriptのmapオブジェクトのclear()と一緒によく使われる処理
一緒によく使われる処理は、mapオブジェクトに新しい要素を追加するset()メソッドです。
なぜなら、clear()メソッドはmapオブジェクト内のすべての要素を削除するため、新しい要素を追加する必要があるからです。
使用する上での注意点
mapオブジェクトのclear()を使用すると、mapオブジェクト内のすべてのキーと値が削除されます。
JavaScriptのmapオブジェクトのclear()と似た処理のJSメソッド、違い
Array.prototype.splice()とArray.prototype.lengthに0を代入する処理が似ていますが、下記の違いがあります。
- Array.prototype.splice()は、配列の要素を削除したり、要素を追加したりすることができます。
- Array.prototype.length = 0は、配列内のすべての要素を削除しますが、新しい要素を追加することはできません。
JavaScriptのmapオブジェクトのclear()を使ったサンプルコードの紹介
mapオブジェクトのclear()のサンプルコード1
1 2 3 4 5 6 7 |
let map = new Map(); map.set('name', 'John'); map.set('age', 30); map.clear(); console.log(map); |
mapオブジェクトのclear()のサンプルコード2
1 2 3 4 5 6 7 8 9 |
let map = new Map(); map.set('name', 'John'); map.set('age', 30); let size = map.size; map.clear(); console.log(size); |
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オブジェクトのclearメソッドについても補足としてリンクを貼っておきます。
参考にしてみてください。