JavaScript - Map.get() 方法



在 JavaScript 中,Map.get() 方法用于返回与指定键关联的“值”。它以“键”作为参数;如果提供的键存在于 Map 对象中,则此方法返回相应的“值”。如果 Map 对象中找不到该键,则返回“undefined”作为结果。

如果 Map 中某个键关联的值是对象,那么 Map.get() 将返回对该对象的引用。因此,对该对象所做的任何更改也会反映在 Map 对象中。

此方法几乎与所有浏览器兼容,例如 Chrome、Edge、Firefox、Opera 和 Safari。

语法

以下是 JavaScript Map.get() 方法的语法:

get(key)

参数

此方法仅接受一个参数。下面描述了该参数:

  • key - 要从映射中检索其关联“值”的键。

返回值

此方法返回与指定键关联的“值”,或者如果 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();
      
      // Create an object and add it to the Map
      const obj = { name: 'Varun', age: 45 };
      map.set('1', obj);
   
      // Retrieve the object from the Map
      const retrievedObj = map.get('1');
   
      // Modify the retrieved object
      retrievedObj.age = 55;
   
      document.write(JSON.stringify(map.get('1'))); // Output: { name: 'Varun', age: 55 }
   </script>
</body>
</html>

正如我们在输出中看到的,更改已反映在原始 Map 对象中。

广告

© . All rights reserved.