Map.delete() 在 JavaScript 中
JavaScript 中的地图是什么?
- Map 是 JavaScript 中的一种数据结构,它允许存储 [key, value] 对,其中任何值都可以用作键或值。
- 映射集合中的键和值可以是任何类型,如果使用集合中已经存在的键将值添加到映射集合,则新值将替换旧值。
- map 对象中元素的迭代是按插入顺序完成的,“for...”循环为每次迭代返回一个包含所有 [key, value] 对的数组。
JavaScript 中对象和映射的区别
这两种数据结构在许多方面都相似,例如都使用键存储值,允许使用键检索这些值,删除键以及验证键是否包含任何值。然而,JavaScript 中的对象和地图之间存在相当大的差异,这使得在许多情况下使用地图成为更好和更可取的选择。
- 映射中使用的键可以是任何类型的值,例如函数、对象等,而对象中的键仅限于符号和字符串。
- 使用 size 属性可以很容易地知道地图的大小,但是在处理对象时,必须手动确定大小。
- 在需要频繁添加和删除 [key, value] 对的情况下,应首选 Map,因为 Map 是一种迭代数据类型,可以直接迭代,而迭代对象需要以特定方式获取其键。
JavaScript 中的 Map.delete() 方法
JavaScript 中的 Map.delete() 方法用于删除地图中存在的所有元素中的指定元素。
Map.delete() 方法获取需要从地图中删除的键,从而删除与该键关联的元素并返回 true。如果密钥不存在,则返回 false。
应用:
- Map.delete() 用于删除地图中存在的所有元素中与键关联的元素。
句法:
my_map.delete(key)
Parameters Used:
- key: The element associated with this key is to be removed from the map
Return value:
- The Map.delete() method returns true, if the key is present whose associated element is to removed which is passed as an argument, otherwise returns false.
例子:
Input : my_map.set(1, 'first');
my_map.set(2, 'second');
my_map.set(3,'third');
my_map.set(4,'fourth');
document.write(my_map.delete(3));
Output : true
说明:键 '3' 存在于地图中,因此与其关联的元素被删除并返回 true
Input : my_map.set(1, 'first');
my_map.set(2, 'second');
my_map.set(3,'third');
my_map.set(4,'fourth');
document.write(my_map.delete(5));
Output : false
说明:地图中不存在键“5”,因此它返回 false。
代码 1:
输出:
true
key-value pair of the map after deletion-
1: first
2: second
4: fourth
代码 2:
输出:
false
key-value pair of the map after deletion-
1: first
2: second
3: third
4: fourth
- 错误和异常:
- 如果作为参数传递给函数的键在映射中不存在,则返回 false。基本上,它既不抛出任何异常,也没有任何错误。
Map.clear()、Map.erase() 和这个函数的工作区别
Map.clear() 删除映射的所有键值对并将映射的大小减小到零。而 Map.erase() 删除指定的映射值,其键作为参数或迭代器或在范围内传递以删除对。
支持的浏览器:
- 铬 38 及以上
- 边缘 12 及以上
- 火狐 13 及以上
- Internet Explorer 11 及更高版本
- Opera 25 及以上
- Safari 8 及以上