この記事では現在 Stage 2 の Symbols as WeakMap keys 提案について解説する。 プロポーザルの詳細についてはtc39/proposal-symbols-as-weakmap-keysを参照してほしい。 また、ここで紹介した仕様に関しては今後更新されていく可能性がある。 概要 Symbols as WeakMap keys は、WeakMap のキーとしてシンボルを使えるようにするための提案である。 現在の WeakMap では、キーとしてオブジェクトのみを使用できる。 const weak = new WeakMap(); const key = {}; const value = ""; weak.set(key, value); たとえば、キーとして数字や文字列などのプリミティブな値を使用すると実行時エラーが発生する。 const weak = new W