JavaScript 中的 Map.set() 方法用于在 Map 对象中添加或更新键值对。它需要两个参数:键和值。如果 map 中已存在该键,则与该键关联的值将更新为提供的新值。如果该键不存在,则会向 Map 中添加一个新的键值对。此方法返回 Map 对象本身,允许方法链接。
此方法几乎兼容所有浏览器,例如 Chrome、Edge、Firefox、Opera 和 Safari。
语法
以下是 JavaScript Map.set() 方法的语法 -
set(key, value)
参数
此方法接受两个参数。下面描述相同 -
- key - 必须在 Map 对象中添加或更新的元素的键。键可以是任何值,包括 objects 或 primitive 值。
- value - 必须在 Map 对象中添加或更新的元素的值。该值可以是任何类型,包括 objects 或 primitive 值。
返回值
此方法返回 Map 对象本身。
示例 1
在以下示例中,我们使用 JavaScript Map.set() 方法将键值对添加到空 Map 对象。
我们使用 entries() 方法创建了一个包含 map 的键值对的迭代器对象。然后,使用 next() 方法从迭代器中检索下一个键值对。
<html>
<body>
<script>
let map = new Map();
map.set(1, 'apple');
const iterator = map.entries();
document.write(iterator.next().value);
</script>
</body>
</html>
如果我们执行上述程序,它会返回提供的键值对作为结果。
示例 2
在下面的示例中,我们将多个键值对添加到一个空的 Map 对象中 -
<html>
<body>
<script>
let map = new Map();
map.set(1, 'apple');
map.set(2, 'banana');
map.set(3, 'cherry');
const iterator = map.entries();
document.write(iterator.next().value, "<br>");
document.write(iterator.next().value, "<br>");
document.write(iterator.next().value);
</script>
</body>
</html>
正如我们在下面的输出中看到的那样,所有提供的键值对都已添加到 Map 对象中。
示例 3
在这里,我们使用 JavaScript set() 方法更新现有键的值 -
<html>
<body>
<script>
let map = new Map();
map.set(1, 'apple');
map.set(1, 'banana');
document.write(map.get(1), "<br>");
</script>
</body>
</html>
它将返回键 “1” 新插入的 “value” (banana) 作为结果。
示例 4
在此示例中,将 set() 方法链接在一起,以在单个语句中将多个键值对添加到空 Map 中 -
<html>
<body>
<script>
let map = new Map().set(1, 'apple').set(2, 'banana').set(3, 'cherry');
document.write(map.get(1), "<br>");
document.write(map.get(2), "<br>");
document.write(map.get(3));
</script>
</body>
</html>
如果我们执行上述程序,它会返回所有 key 的 “values” 作为结果。