JavaScript - Map.get() 方法
在 JavaScript 中,Map.get() 方法用于返回与指定键关联的"值"。该方法以"key"作为参数;如果提供的键存在于 Map 对象中,则此方法返回相应的值。如果在 Map 对象中找到该键,则返回"undefined"作为结果。
如果 Map 中与键关联的值是一个对象,则 Map.get() 返回该对象的引用。因此,对该对象所做的任何更改也将反映在 Map 对象中。
此方法几乎兼容所有浏览器,例如 Chrome、Edge、Firefox、Opera 和 Safari。
语法
以下是 JavaScript Map.get() 方法的语法 -
get(key)
参数
此方法仅接受一个参数。下文同样描述 -
key - 需要从 Map 中检索其关联"值"的键。
返回值
此方法返回与指定键关联的"值",如果 Map 对象中不存在该键,则返回"undefined"。
示例
示例 1
以下示例演示了 JavaScript Map.get() 方法的基本用法 -
<html>
<body>
<script>
let map = new Map();
map.set(1, 'apple');
map.set(2, 'banana');
map.set(3, 'cherry');
document.write(map.get(2));
</script>
</body>
</html>
如果我们执行上述程序,它将返回与指定键"2"关联的值("banana")。
示例 2
如果提供的键在 Map 对象中不存在,则此方法返回结果"undefined"。
在这里,我们检索 Map 对象中键("4")的关联值 -
<html>
<body>
<script>
let map = new Map();
map.set(1, 'apple');
map.set(2, 'banana');
map.set(3, 'cherry');
document.write(map.get(4));
</script>
</body>
</html>
执行上述程序后,返回结果"undefined"。
示例 3
如果没有向 get() 方法传递任何参数,则返回结果"undefined"。
<html>
<body>
<script>
let map = new Map();
map.set(1, 'apple');
map.set(2, 'banana');
map.set(3, 'cherry');
document.write(map.get());
</script>
</body>
</html>
执行上述程序后,返回结果为"undefined"。
示例 4
在此示例中,我们首先创建了一个对象 "obj",该对象具有"name"和"age"属性,并使用键"1"将其添加到 Map 中。然后,我们使用 Map.get() 从 Map 中检索该对象,并将其存储在 "retrievedObj" 中。之后,我们通过更新 age 属性来修改了 retrievedObj。
最后,当我们再次使用 Map.get() 检索与"1"关联的对象时,我们会发现对 retrievedObj 所做的更改已反映在 Map 中存储的原始对象中。
<html>
<body>
<script>
const map = new Map();
// 创建一个对象并将其添加到 Map
const obj = { name: 'Varun', age: 45 };
map.set('1', obj);
// 从 Map 中检索对象
const retrievedObj = map.get('1');
// 修改检索到的对象
retrievedObj.age = 55;
document.write(JSON.stringify(map.get('1'))); // Output: { name: 'Varun', age: 55 }
</script>
</body>
</html>
正如我们在输出中看到的,更改已经反映在原始 Map 对象中。

