JS - Map Set & 去重方法

本文介绍了JavaScript中的Map和Set数据结构,Map用于存储键值对,支持任意类型的键,查找速度快。Set则不允许有重复元素,常用于数组去重。文中列举了多种数组去重的方法,包括使用Set、Array.filter、Array.reduce等,并强调了Map和Set在保持元素插入顺序方面的特性。
摘要由CSDN通过智能技术生成

Map

Map是一种数据结构,由键值对组成。Map看起来像一个二维数组,存放着一对对键值对,可通过键名获取对应的键值。将一个对象数组(例如学生成绩对象)转化为Map,可以通过“学生姓名”获取“学生成绩”,Map查询速度更快。

var scoreList = [
  { name: 'Tim', age: 18, score: 90 },
  { name: 'Tony', age: 17, score: 95 },
  { name: 'Kevin', age: 18, score: 91 }
];
var tempArray = [];
scoreList.forEach((item) => {
  tempArray.push([item.name, item.score]); // 转化成Map结构,通过键名查找score
})
var scoreMap = new Map(tempArray);

console.log(scoreMap); // Map结构
console.log(Array.from(scoreMap)); // 转化为数组的形式
console.log(`Kevin 's score: `, scoreMap.get('Kevin')); // get()获取‘Kevin’对应的键值
console.log(scoreMap.has('Tim')); // has()判断是否含有键名‘Tim’

for of遍历可迭代对象——Map。</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值