ES6之深入Set 与 WeakSet的知识讲解

4 篇文章 0 订阅
订阅专栏
  1. Set的概念:
    Set是ES6 提供的新的数据结构。它类似于数组,只有属性值,并且成员的值都是唯一的,没有重复的值

  2. WeakSet的概念:
    WeakSet 结构与 Set 类似,weakSet的成员值是唯一的,并且 WeakSet 的成员只能是对象,而不能是其他类型的值

  3. 传递参数的讲究:
    Set、WeakSet传递的参数必须具备迭代接口,比如:数组,字符串,arguments等,
    迭代接口就是指在原型上有:Symbol(Symbol.iterator)
    在这里插入图片描述

  4. Set实例化是长什么样的?
    在这里插入图片描述

  5. WeakSet实例化是长什么样的?
    在这里插入图片描述

  6. Set 与 WeakSet 之间的区别?
    WeakSet和 Set 对象的区别有两点:
    1.与Set相比,WeakSet 只能是对象的集合,而不能是任何类型的任意值
    2.WeakSet持弱引用:集合中对象的引用为弱引用如果没有其他的对 WeakSet中对象的引用,那么这些对象会被当成垃圾回收掉。 这也意味着WeakSet中没有存储当前对象的列表。 正因为这样,WeakSet 是不可枚举的。

  7. Set的应用(数组去重,数组的交差并集):

let o = {
	name: 'cst'
}
let arr = [11, o, 11, 12, 33, o, 33, 44, 55, 44, {name: 'hfq'}];

	// 用Set来实现去重
	let os = new Set(arr);
	let newArr = [...os];
	console.log(newArr);

let arr1 = [1, 2, 3, 4, 5, 3];
let arr2 = [1, 3, 4, 6, 7, 8];

	// 交集
	let osj1 = new Set(arr1);
	let osj2 = new Set(arr2);
	let newarrj = [...osj1].filter(ele => osj2.has(ele));
	console.log(newarrj);

	// 并集
	let osbing = new Set([...arr1, ...arr2]);
	console.log([...osbing]);

	// 差集
	let oscj1 = new Set(arr1);
	let oscj2 = new Set(arr2);
	let newarrc1 = [...oscj1].filter(ele => !oscj2.has(ele));
	console.log(newarrc1);

	let newarrc2 = [...oscj2].filter(ele => !oscj1.has(ele));
	console.log(newarrc2);

下篇文章将更新Map 与 WeakMap 的知识,欢迎关注。
如有知识疏漏的地方,请指出,谢谢!

SetWeakSet
langmanboy的博客
04-21 830
SetWeakSet 1. Set 创建 Set 是一个特殊的类型集合 —— 值的集合没有键,它的每一个值只能出现一次 new Set(iterable) 可以接受一个数组或者具有 iterable 接口的其他数据结构作为参数,用来初始化 // 声明 let set = new Set(); // 提供数组对象,则会复制数组元素以并去重 let set = new Set([1, 2, 5, 5, 5]) console.log(set); // Set(3) {1, 2, 5} // 去除字符串
SetWeakSet区别
qq_44820039的博客
03-29 2225
Set 和Map的主要应用场景在于数据重组和数据存储 Set集合 创建Set数据结构 const s = new Set; console.log(s); /* Set(0) {} [[Entries]] No properties size: (...) __proto__: Set */ 打印出来是一个空的Set对象,通过new来创建Set...
你真的了解es6weakSetweakMap吗?
最新发布
2401_85955297的博客
08-03 556
你真的了解es6weakSetweakMap吗?
SetWeakSet
weixin_41040445的博客
04-08 829
ES6之前的数据集合主要是数组和对象,ES6补充的新数据结构SetWeakSet、Map、WeakMap Set 1、Set的基本使用 set 类似以数组,主要区别是有自己的方法,并且内部集合不能重复 let typeSet = new Set([1,2,3,4,6]); typeSet.add(8); typeSet.add("a"); typeSet.add(true); console.log(typeSet) 返回的结果是一个set集合,和数组对象都不一样,是一个新的数据集合 设
JavaScript Setweakset
SpringDou的博客
12-13 294
ES6, 增加了SetWeakSet两个集合,简单总结一下使用方法以及他们的区别 1.Set是一个新的数据结构,类似于数组,不过里面的数值是不能重复的 Set 实例的方法分为两大类:操作方法(用于操作数据)和遍历方法(用于遍历成员)。下面先介绍四个操作方法。 add(value):添加某个值,返回 Set 结构本身。 delete(value):删除某个值,返回一个布尔值,表示删除是否...
SetWeakSet
WindrunnerMax
05-28 1009
SetWeakSet Set对象允许存储任何类型的唯一值,无论是原始值或者是对象引用,Set对象中的值不会重复。 WeakSet对象允许存储对象弱引用的唯一值,WeakSet对象中的值同样不会重复,且只能保存对象的弱引用。 Set 描述 Set对象是值的集合,可以按照插入的顺序迭代它的元素,Set中的元素只会出现一次,即Set中的元素是唯一的,常用来作数组去重。 属性与方法 Set.prototype.constructor: 返回构造函数。 Set.prototype.size: 返回Set对象的值的
随笔-SetWeakSet的使用
程序员阿甘的博客
12-09 875
上一篇阐述了ES6的Map和Object的比较,以及Set和Array的比较 Map和Set唯一性判断 由于Map键名 和 Set元素,在底层都是采用哈希表保证的唯一性,而哈希表保证唯一性的关键就是:如何判断两个元素或两个属性是相同的? 这里Map和Set使用的一套判断是否相同的算法:下面MDN对于Set和Map对于唯一性元素判定的描述: 可以发现Map和Set唯一性保证时都特别关注了两个东西: 1、+0,-0 2、NaN和NaN 这里结论是: Map和Set认为 +0和-0相.
ES6新增的 SetWeakSet 是什么玩意?在此揭晓
qq_43623970的博客
04-28 232
现在的章节内容会更加的紧密,如果大家看不懂可以先去看以前的文章,当然看了的忘了,也可以去看一下,这样学习后面的内容才会更加容易. 什么是Set结构 SetES6给开发者带来的一种新的数据结构,你可以理解为值的集合。我们平时见到的数组Array也是一种数据结构,但是Set跟其他数据结构不同的地方就在于:它的值不会有重复项。 基本用法 我们从最基本的学起,Set的用法:     ...
基本知识:简洁易懂讲内存泄漏和Set WeakSet的运用
09-22
### 基本知识:简洁易懂讲解内存泄漏与 Set/WeakSet 的运用 #### 内存泄漏概览 内存泄漏是指程序在运行过程中,由于疏忽或错误而导致已分配的内存未能及时释放,从而使这部分内存无法被其他部分程序再次使用的情况...
8小时美女老师带你完全掌握ES6新规范讲解
11-14
**ES6,全称ECMAScript ...在这8小时的课程中,美女老师会详细讲解以上知识点,通过实例演示和练习,帮助你扎实掌握ES6,提升你的JavaScript编程技能。记得跟随老师的步伐,一步步实践,将理论知识转化为实际操作能力。
深入浅出ES6
11-02
本书主要从 迭代器 Iterator、 生成器 Generators、不定参数 Rest、默认参数 Default、解构 Destructuring、生成器 Generator、代理 Proxy,以及几种新类型:Set、Map、WeakSetWeakMap、集合 Collection。方面讲解
es6入门.zip
08-28
这个 ES6 入门教程将详细讲解这些内容,帮助你快速掌握 ES6 的核心知识,提升编程能力。无论你是初学者还是有一定经验的开发者,都能从中受益。记得配合实践,理论与实践结合,才能更好地理解和运用这些新特性。
JavaScript 数据类型之SetWeakSet
klk20001113的博客
03-13 1149
SetWeakSet
es6 setWeakSet
kangkang_style的博客
04-03 228
set: ES6提供的新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set函数可以接受一个数组(或类似数组的对象)作为参数,用来初始化。 在Set内部,两个NaN是相等。两个对象总是不相等的。可以用length来检测。 set的四个操作方法: add(value): 添加某个值,返回Set结构本身。 delete(value): 删除...
SetweakSet Map和WeakMap
qq_24418107的博客
05-28 1231
5.WeakSet它是弱引用,在weakSet里面引用了对象,垃圾回收机制不会考虑该对象的引用,若外面已经没有了该对象的引用,则垃圾回收机制会回收该对象,weakSet内部引用的该对象也会自动消失,所以他内部的对象不适合被引用,也不允许便利,2.Map是一组键直对的数据局结构,我们知道普通的对象,他的key只能是字符串类型的,但是Map他的key不限制于字符串,可以是函数 可以是对象包含任何类型。WeakSet 是类似于 Set 的集合,它仅存储对象,并且一旦通过其他方式无法访问它们,便会将其删除。
ES6基础】SetWeakSet
weixin_34174322的博客
04-25 228
在开发过程中,我们会经常使用到数组Array这种引用类型的数据结构,并十分清楚数组是种有序的集合,并且每个元素都可以使用数字下标的形式获取。但是在一些业务场景中,我们并不需要集合维护一个有序的状态,甚至有些场景需要无序集合,因此ES6里加入了无序集合Set和其的Weak版本WeakSet。其实无序集合的概念十分容易理解,我们可以认为是没有排序概念的数组,并且具有元素不可重复的特性。这篇文章笔者将从...
SetWeakSet 结构?
weixin_47450807的博客
03-12 1585
一、Set的使用 SetES6中新增的一个数据结构,也就是集合。其中该数据结构中存在一些方法,可以帮助我们更快的解决数组中的问题。 1、set类型必须存放可迭代数据类型 2、Set可以用来去重 3、Set具有如下方法, add, delete, clear, has, forEach, 以及size属性,Set也支持for--of迭代的 //add方法 const s1 = new Set([1,2,3,4,5,2]) s1.add(111) console.log(s1) //{1,2,3,4,
SetWeakset的使用
weixin_47450807的博客
12-31 544
SetWeakset的使用 之前就了解过SetWeakSet,但是只是了解,没有对其进行总结。这篇博客就是总结SetWeakSet的一些方法。 一、理解Set ① 简述 Set是一个引用数据类型,我们可以理解为集合,在Set中我们需要注意其中的元素是不可以重复的,而且Set是严格数据类型,比如说‘1’和1是两个不同的元素,但是对于数组而言,它会将其转化成同一种数据类型(字符串)。 ②方法 <script> let set = new Set(); //创建一个set实例对象 //添
ES6SetweakSet
过客如期的博客
03-23 148
一,新增的数据类型Set 1.es6新增了数据类型集合(Set),集合成员的值都是唯一的,没有重复的值。 2.Set是一个构造函数,可接受数组,或任意有interator接口的数据类型作为参数,返回一个Set 数据结构 { let s = new Set([1,2,3,4,1,1,1]) console.log(s) // {1,2,3,4} function myAdd(x,y) {...
ES6 Symbol、Set与Map深入解析:功能与实战应用
ES6中,Symbol、Set和Map是三种新的数据结构和类型,它们为JavaScript编程带来了更高效和安全的特性。本篇文章将深入解析这三种数据类型及其在实际开发中的应用。 1. Symbol:ES6引入的Symbol是JavaScript的第七...
写文章

热门文章

  • vueui框架之elementUI--input输入框的属性 :fetch-suggestions="querySearchAsync" 16637
  • 什么是Chrome稳定版,Beta版,Dev版和Canary版发布渠道?(转载) 2016
  • Vue之单向数据流 1711
  • 每天一个npm包 之 js-cookie 1697
  • SpringBoot的旅游网站的设计与实现 - 源码免费(私信领取) 1251

分类专栏

  • 计算机毕业设计 3篇
  • javascript 19篇
  • npm包 3篇
  • es6 4篇
  • 最新技术追踪 5篇
  • 网络 3篇
  • 浏览器 1篇
  • 正则表达式 1篇
  • Vue 2篇
  • 算法 9篇
  • mongodb 3篇
  • html 1篇
  • bug
  • css
  • elementUI 1篇

最新评论

  • 月度员工绩效考核管理系统 - 源码免费(私信领取)

    XIAOLONG-: 想要源码,已三连大大

大家在看

  • 了解你的GPU:深入探讨AMD SMI
  • 三石峰物联网云平台,你值得了解
  • 【开题报告】基于Springboot+vue企业产供销系统设计与实现(程序+源码+论文) 计算机毕业设计
  • 华为全联接大会HUAWEI Connect 2024印象(三):华为开发者布道师计划
  • Steam丢失steamui.dll导致无法启动,Steam缺少steamui.dll文件的最新解决办法 743

最新文章

  • 月度员工绩效考核管理系统 - 源码免费(私信领取)
  • 校园管理系统的设计与实现 - 免费源码(私信领取)
  • 基于SpringBoot的考务管理系统 - 源码免费(私信领取)
2024年10篇
2021年13篇
2020年25篇
2019年6篇
2018年3篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

玻璃钢生产厂家资兴玻璃钢牌匾雕塑玻璃钢军人雕塑厂家洛阳优质玻璃钢仿铜雕塑制作郴州佛像玻璃钢雕塑西城区商场美陈创意本溪玻璃钢商场美陈玻璃钢鹿雕塑制作遵义商场美陈报价海南玻璃钢雕塑制作宁夏玻璃钢景观雕塑经验丰富铜仁商场美陈装饰冰淇淋商场美陈户外游乐场玻璃钢雕塑价格浙江通用玻璃钢雕塑福建泉州玻璃钢雕塑厂出售玻璃钢迎宾雕塑开原玻璃钢马雕塑大白玻璃钢雕塑梅州玻璃钢卡通雕塑介绍玻璃钢机器人外壳雕塑定制江苏主题商场美陈供应动漫玻璃钢雕塑生产厂家玻璃钢雕塑安装流程宿迁商场美陈报价绵阳市专业玻璃钢雕塑厂家嘉兴玻璃钢景观雕塑供货商商场美陈中秋濮阳仿木玻璃钢雕塑武汉公园玻璃钢雕塑销售厂家倾销熊猫玻璃钢雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化