什么是JavaScript中的映射?
- Map是JavaScript中的一种数据结构,允许存储[key,value]对,其中任何值都可以用作键或值。
- 地图集合中的键和值可以是任何类型,如果使用集合中已存在的键将值添加到地图集合中,则新值将替换旧值。
- 映射对象中元素的迭代是按插入顺序进行的,“for…”循环为每次迭代返回一个包含所有[key,value]对的数组。
JavaScript中对象和映射之间的差异 这两种数据结构在许多方面都是相似的,例如都使用键存储值,允许使用键检索这些值,删除键,以及验证键是否包含任何值。然而,JavaScript中的对象和映射之间存在着相当大的差异,这使得在许多情况下,映射的使用成为更好、更可取的选择。
- 地图中使用的键可以是任何类型的值,如函数、对象等,而对象中的键仅限于符号和字符串。
- 使用size属性可以很容易地知道地图的大小,但在处理对象时,必须手动确定大小。
- 在需要频繁添加和删除[key,value]对的情况下,应该首选映射,因为映射是一种可迭代的数据类型,可以直接迭代,而迭代对象需要以特定的方式获取其密钥。
地图JavaScript中的clear()方法 地图。JavaScript中的clear()方法用于从映射中删除所有元素并使其为空。它将从映射中删除所有[key,value]。无需将参数作为参数发送到映射。方法,并返回未定义的返回值。
语法:
mapObj.clear()
使用的参数: 地图中不需要任何参数。clear()方法。
返回值: 地图clear()方法的返回类型未定义。
下面提供了上述功能的示例。
例如:
Input : var myMap = new Map(); myMap.set(0, 'geeksforgeeks'); console.log(myMap.size); myMap.clear(); console.log(myMap.size); Output: 1 0
说明:在本例中,创建了一个地图对象“myMap”,其中包含一个[key,value]对和地图。clear()方法用于从“myMap”中删除[key,value]对。我的地图。size()用于检查属于映射对象的[key,value]对的数量。
Input : var myMap = new Map(); myMap.set(0, 'geeksforgeeks'); myMap.set(1, 'is an online portal'); myMap.set(2, 'for geeks'); console.log(myMap.size); myMap.clear(); console.log(myMap.size); Output : 3 0
说明:在本例中,创建了一个地图对象“myMap”,其中包含三对[key,value]和地图。clear()方法用于从“myMap”中删除所有[key,value]对。我的地图。size()用于检查属于映射对象的[key,value]对的数量。
下面提供了上述功能的代码。
代码1:
<script> // creating a map object var myMap = new Map(); // Adding [key, value] pair to the map myMap.set(0, 'geeksforgeeks' ); // displaying the number of // [key, value] pairs the map has document.write(myMap.size); document.write( "<br>" ); // removing the [key, value] pairs of // the map using Map.clear() method myMap.clear(); // displaying the number of // [key, value] pairs the map has document.write(myMap.size); </script> s |
输出:
1 0
代码2:
<script> // creating a map object var myMap = new Map(); // Adding [key, value] pair to the map myMap.set(0, 'geeksforgeeks' ); myMap.set(1, 'is an online portal' ); myMap.set(2, 'for geeks' ); // displaying the number of // [key, value] pairs the map has document.write(myMap.size); document.write( "<br>" ); // removing the [key, value] pairs // of the map using Map.clear() method myMap.clear(); // displaying the number of // [key, value] pairs the map has document.write(myMap.size); < /script> |
输出:
3 0
应用:
- 地图clear()方法用于删除映射的所有[key,value]对。
让我们来看一个JavaScript程序:
<script>
// creating a map object
var
myMap =
new
Map();
// Adding [key, value] pair to the map
myMap.set(0,
'Maps'
);
myMap.set(1,
'in JavaScript'
);
// displaying the number of
// [key, value] pairs the map has
document.write(myMap.size);
document.write(
"<br>"
);
// removing the [key, value] pairs of
// the map using Map.clear() method
myMap.clear();
// displaying the number of
// [key, value] pairs the map has
document.write(myMap.size);
<script>
输出:
2 0
例外情况:
- 如果变量不是映射类型,则映射。entries()操作抛出一个TypeError。
支持的浏览器:
- 铬38及以上
- 边缘12及以上
- Firefox 19及以上版本
- Internet Explorer 11及以上版本
- 歌剧院25岁及以上
- Safari 8及以上
参考: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/clear