このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

WeakMap.prototype.get()

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

get()WeakMap インスタンスのメソッドで、この WeakMap 内のキーに対応する値を返します。該当するキーが存在しない場合は undefined を返します。オブジェクトの値は、コピーではなく、最初に格納されたときの参照と同じものが返されます。そのため、返されたオブジェクトに変更を行うと、その参照が保持されている場所(WeakMap の中を含む)すべてに反映されます。

試してみましょう

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

weakmap.set(object1, 42);

console.log(weakmap.get(object1));
// 予想される結果: 42

console.log(weakmap.get(object2));
// 予想される結果: undefined

構文

js
get(key)

引数

key

この WeakMap オブジェクトから値を取得する項目のキー。オブジェクトのキーは値ではなく参照として比較されます。

返値

この WeakMap オブジェクト内の指定されたキーに関連付けられた値です。キーが見つからなかった場合は、undefined が返されます。key がオブジェクトでも非登録シンボルでもない場合は、常に undefined を返します。

get() メソッドの使用

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

wm.get(window); // "foo" を返す
wm.get("baz"); // undefined を返す

仕様書

仕様書
ECMAScript® 2027 Language Specification
# sec-weakmap.prototype.get

ブラウザーの互換性

関連情報