WeakMap.prototype.get()

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

WeakMap 例項的 get() 方法返回此 WeakMap 中與鍵對應的,如果不存在則返回 undefined。物件值將以最初儲存的相同引用返回,而不是副本,因此對返回物件的修改將反映在持有該引用的任何地方,包括 WeakMap 內部。

試一試

const weakmap = new WeakMap();
const object1 = {};
const object2 = {};

weakmap.set(object1, 42);

console.log(weakmap.get(object1));
// Expected output: 42

console.log(weakmap.get(object2));
// Expected output: undefined

語法

js
get(key)

引數

key

要從 WeakMap 物件返回的值的鍵。物件鍵透過引用進行比較,而不是透過值。

返回值

WeakMap 物件中與指定鍵關聯的值。如果找不到鍵,則返回 undefined。如果 key 不是物件或未註冊的 symbol,則始終返回 undefined

示例

使用 get()

js
const wm = new WeakMap();
wm.set(window, "foo");

wm.get(window); // Returns "foo".
wm.get("baz"); // Returns undefined.

規範

規範
ECMAScript® 2026 語言規範
# sec-weakmap.prototype.get

瀏覽器相容性

另見