【Node.js24.x】WeakMap::set()メソッドの使い方
setメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
setメソッドは、Node.jsの組み込みオブジェクトであるWeakMapに、新しいキーと値のペアを追加したり、既存のキーに対応する値を更新したりするメソッドです。
WeakMapは、キーとしてオブジェクトのみを受け入れる特別なコレクションです。その最大の特徴は、キーとして登録されたオブジェクトが他のどこからも参照されなくなった際に、ガベージコレクションによって自動的にメモリから解放される(弱い参照を持つ)点にあります。この性質により、メモリリークのリスクを低減し、オブジェクトのライフサイクルに紐づいたデータを効率的に管理できます。
setメソッドを使用する際には、第一引数にキーとなるオブジェクトを、第二引数にそのキーに関連付ける値を指定します。キーにはオブジェクト型(例: オブジェクト、関数、シンボルなど)のみ使用でき、文字列や数値などのプリミティブ値は指定できません。値は任意のデータ型を設定することが可能です。メソッドが実行されると、呼び出し元のWeakMapインスタンス自身が返されるため、メソッドチェーンの形で複数の操作を行うこともできます。
この機能は、DOM要素にプライベートなデータを関連付けたり、オブジェクトのインスタンスに付随する追加情報を、そのオブジェクトが不要になったときに自動的にクリーンアップされる形で保持したりする場合に特に有用です。
構文(syntax)
1const weakMap = new WeakMap(); 2const keyObject = {}; 3const value = "some value"; 4weakMap.set(keyObject, value);
引数(parameters)
key, value
- key: 任意のオブジェクト: 弱参照で保持されるキー
- value: 任意の値: キーに対応する値
戻り値(return)
WeakMap
このメソッドは、指定されたキーと値のペアを WeakMap に追加または更新します。戻り値として、操作が行われた WeakMap インスタンス自身を返します。