WeakMap.prototype.get()
Базовая линия Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод get() экземпляров WeakMap возвращает значение, соответствующее ключу в этом 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
Синтаксис
get(key)
Параметры
-
key - Ключ значения для возврата из объекта
WeakMap. Ключи объектов сравниваются по ссылке, а не по значению.
Возвращаемое значение
Значение, связанное с указанным ключом в объекте WeakMap. Если ключ не найден, возвращается undefined. Всегда возвращается undefined, если key не является объектом или незарегистрированным символом.
Примеры
Использование get()
const wm = new WeakMap();
wm.set(window, "foo");
wm.get(window); // Returns "foo".
wm.get("baz"); // Returns undefined.
Спецификации
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
get |
36 |
12 |
6До версии Firefox 38 этот метод вызывалTypeError, когда параметр ключа не был объектом. Однако спецификация ES2015 предписывает возвращать вместо этого undefined. Кроме того, WeakMap.prototype.get принимал необязательный второй аргумент в качестве резервного значения, что не является частью стандарта. Оба нестандартных поведения были удалены в версии 38 и выше. |
23 |
8 |
36 |
6До версии Firefox for Android 38 этот метод вызывалTypeError, когда параметр ключа не был объектом. Однако спецификация ES2015 предписывает возвращать вместо этого undefined. Кроме того, WeakMap.prototype.get принимал необязательный второй аргумент в качестве резервного значения, что не является частью стандарта. Оба нестандартных поведения были удалены в версии 38 и выше. |
24 |
8 |
3.0 |
37 |
8 |
1.0.0 |
1.0 |
0.12.0 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap/get