Map.prototype.get()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Map
实例的 get()
方法返回该 map 中的指定元素。如果与所提供的键相关联的值是一个对象,那么你将获得该对象的引用,对该对象所做的任何更改都会有效地在 Map
对象中修改它。
尝试一下
语法
js
get(key)
参数
key
-
从
Map
对象返回的元素的键。
返回值
与指定键相关联的元素,如果键在 Map
对象中找不到,则返回 undefined
。
示例
使用 get()
js
const myMap = new Map();
myMap.set("bar", "foo");
console.log(myMap.get("bar")); // 返回 "foo"
console.log(myMap.get("baz")); // 返回 undefined
使用 get() 获取对对象的引用
js
const arr = [];
const myMap = new Map();
myMap.set("bar", arr);
myMap.get("bar").push("foo");
console.log(arr); // ["foo"]
console.log(myMap.get("bar")); // ["foo"]
注意,持有原始对象引用的映射实际上意味着对象不能被垃圾回收,这可能会导致意外的内存问题。如果你希望存储在 map 中的对象具有与原始对象相同的生命周期,请考虑使用 WeakMap
。
规范
Specification |
---|
ECMAScript Language Specification # sec-map.prototype.get |
浏览器兼容性
BCD tables only load in the browser