📜  Map.delete() 在 JavaScript 中

📅  最后修改于: 2022-05-13 01:56:52.167000             🧑  作者: Mango

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)

例子:

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 及以上