Map对象应用(数组对象去重)

1、使用Map对象

重复的值以最后一个为准

var arr = [
	{id: '1',key: '1',value: '明月'}, 
	{id: '3',key: '2',value: '可欣'}, 
	{id: '2',key: '3',value: '小红'}, 
	{id: '1',key: '1',value: '小馨'}, 
	{id: '1',key: '2',value: '小静'}
];

var map = new Map();
for (let item of arr) {
    map.set(item.id, item);//map.set( a, b),将b赋予a
 }
 arr = [...map.values()]

map值
在这里插入图片描述
去重后数组
在这里插入图片描述

1.1扩展

for…in 循环主要是为了遍历对象而生(直接拿到对象的属性名,再根据属性名获取属性值),不适用于遍历数组(拿到的是数组对象的下标)
for…of 循环可以用来遍历数组(直接获取数组的值)、类数组对象,字符串、Set、Map 以及 Generator 对象
在这里插入图片描述

1.2扩展

1.map.has()返回的是布尔类型,判断是否存在该值
2.map.get()返回了该值在数组中的下标
3.map.set( a, b),将b赋予a


版权声明:本文为s8806479原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。