WeakMap.prototype.set()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
set() は WeakMap インスタンスのメソッドで、指定されたキーと値をもつ新しい項目を WeakMap オブジェクトへ追加します。すでにそのキーが存在する場合は、項目を更新します。
試してみましょう
const weakmap = new WeakMap();
const object1 = {};
const object2 = {};
weakmap.set(object1, "foo");
weakmap.set(object2, "bar");
console.log(weakmap.get(object1));
// 予想される結果: "foo"
console.log(weakmap.get(object2));
// 予想される結果: "bar"
構文
js
set(key, value)
引数
返値
WeakMap オブジェクトです。
例外
例
>set() メソッドの使用
js
const wm = new WeakMap();
const obj = {};
// WeakMap に新しい項目を追加
wm.set(obj, "foo").set(window, "bar"); // 連結可能
// WeakMap の項目を更新
wm.set(obj, "baz");
// 非登録シンボルをキーとして使用
const sym = Symbol("foo");
wm.set(sym, "baz");
wm.set(Symbol.iterator, "qux");
仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-weakmap.prototype.set> |