ES6集合,Set集合,Map集合,以及for .... of遍历
发布日期:2021-06-29 02:56:30
浏览次数:3
分类:技术文章
本文共 2006 字,大约阅读时间需要 6 分钟。
目录
集合
1.什么是集合
1.无序
2.不重复
2.Set
ES6的新的数据结构,类似于数组,但是元素是唯一的,而且没有顺序。
创建set
let s = new Set();
添加元素的两种方式
下面例子:10和10重复了,故只输出一个10;
两个对象看似重复了,其实没有,(这时两个内存地址不同的对象,只是值相同了,本质是不同的)let s = new Set([30,40]);s.add(10)s.add(20)s.add(10)s.add(true)s.add("10")s.add("10")s.add(new String("hello"));s.add(new String("hello"));console.log(s);//30,40,10,20,tue,"10",String,String
set集合属性和方法
size属性
返回该set集合中的元素的个数。
set.size();
add(value)
往set集合中添加一个元素,返回Set本身。
delete(value)
删除指定的值,返回一个布尔值,表示删除是否成功。
var arr = ["wo", "shi", "wo", 5]; let s = new Set(arr); console.log(delete(s.wo));//true console.log(s);
has(value)
判断指定的值是否在set
中存在,返回一个布尔值。
let s = new Set([30, 40]); s.has(30);//判断有没有30 console.log( s.has(30));//true
clear()
清除所有的元素。没有返回值
let s = new Set([30, 40]); s.clear(); console.log(s);//{ }
set集合转为数组的方法
Array.from方法可以将Set集合转为数组。
const arr = Array.from(s);
rest参数 三个点
const arr2 = [...s];
给数组去重(因为集合内元素是唯一的)
var arr = [10,20,20,30,50,30];//10,20,30,50var set = new Set(arr);arr = Array.from(set);console.log(arr);//封装成一个数组去重的方法 var arr = [2, 3, 45, 2]; function noDupli(array) { return Array.from(new Set(array)); } console.log(noDupli(arr));//[2, 3, 45]
遍历操作
keys()
返回键名遍历器
values()
返回键的值的遍历器
entries()
返回键值对的遍历器
/这里是 for of 遍历的知识 var set = new Set([2, 3, 4, 5]); //下面是四种方法 for (const item of set.keys()) { console.log(item); } for (const item of set.values()) { console.log(item); } for (const item of set.entries()) { console.log(item); } for (const item of set) { console.log(item); }
3.Map集合
是键值对的集合。与对象中的属性与属性值很类似,但是对象中的属性名只能是字符串。值–值的对应,字符串–值的对应。
创建Map
let map = new Map();
添加元素的方式
唯一性
键的唯一,而不是值的唯一。
属性和方法
size
返回map中有多少个键值对。
set(key,value)
往map集合中添加一个key-value的键值对,返回map本身。如果key存在,原值会被覆盖。
delete(key)
通过键查找对应的键值对,将其删除,返回一个布尔值,表示删除是否成功。
has(key)
判断指定的键是否在map
中存在,返回一个布尔值。
clear()
清除所有的元素。没有返回值
get(key)
读取key对应的键值,如果找不到,返回undefined
遍历操作for of
keys()
返回键名遍历器
values()
返回键的值的遍历器
entries()
返回键值对的遍历器
转载地址:https://blog.csdn.net/z18237613052/article/details/114104704 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月27日 11时39分18秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
python爬虫实现爬取电影信息
2019-04-29
python爬虫:找房助手V1.0-爬取58同城租房信息
2019-04-29
python爬虫:爬取百度云盘资料,保存下载地址、链接标题、链接详情
2019-04-29
Python爬虫爬取广州大学教务系统的成绩(内网访问)
2019-04-29
MySQL常用技能篇
2019-04-29
python爬取网易云歌词
2019-04-29
Python爬取前程无忧招聘信息并写入excel
2019-04-29
Python爬取饿了么外卖信息
2019-04-29
python打造聊天机器人socket编程学习教程
2019-04-29
python打造多人聊天室socket编程学习教程
2019-04-29
Python网络爬虫相关基础概念
2019-04-29
Python网络爬虫的三种数据解析方式
2019-04-29
利用Python爬虫实现百度网盘自动化添加资源
2019-04-29
python爬虫爬取千千音乐榜单音乐
2019-04-29
python爬取百度贴吧每个帖子里面的图片
2019-04-29
python爬虫中使用正则表达式
2019-04-29
python多线程糗事百科案例
2019-04-29
python使用BeautifulSoup4的爬虫
2019-04-29
python模拟点击动态页面
2019-04-29
python丨Scrapy框架案例一:手机APP抓包
2019-04-29