Set学习

作者: Moryan | 来源:发表于2018-07-24 17:52 被阅读0次

类似数组,与map相似,但是成员的值唯一,没有重复的值。

//阮一峰老师写的一个使用方式:

const s=newSet();

[2,3,5,4,5,2,2].forEach(x=>s.add(x));

for(leti of s){console.log(i);} // 2 3 5 4

上面通过add()增加元素到set中,可以去除重复的元素。很多例子前往http://es6.ruanyifeng.com/#docs/set-map详细查看

注意:

1、set可以加入数组参数,也可以加入类似数组的参数

2、向set里面加入参数,是不会发生类型转化。(3和“3”是不同的,不算重复元素)

3、值得注意的是NaN ,set里面的判断类似全等(我用JS高级程序中称呼 ===为全等,称呼==为相等)===中NaN不等于自身,而set中的NaN等于自身

例子:

4、对象总是不相等,加入两个新对象{}尝试下

几个基础的操作方法:

add,has,delete,clear四个操作方法

5、两种去除数组重复的方法

第一种:[...new Set(arr)] 第二种:利用Array.from

原理一样,用Set去掉重复元素再变回数组

    6、    遍历操作

keys(),values(),entries(),forEach()

前三种都是遍历器对象,Set只存在键值或者说是键值和键名一致,所以keys()和values()用法一致,entries()中键值键名一致


前三种

    当然从阮老师那边学到,set默认的遍历和values是一致的,所以可以直接用for...of循环遍历 Set,这里不多讲了,可以参考阮老师的讲解

forEach()就不多讲解,两个例子,最上面一个,这边一个,都来自阮一峰ES6入门

set=newSet([1,4,9]);

set.forEach((value,key)=>console.log(key+' : '+value))

// 1 : 1

// 4 : 4

// 9 : 9

相关文章

  • Set学习

    类似数组,与map相似,但是成员的值唯一,没有重复的值。 //阮一峰老师写的一个使用方式: const s=new...

  • Java基础之Set

    前言 今天学习java基础类型Set,解剖Set的底层实现。 一、Set子类 Set接口继承自Collection...

  • Python ☞ day 4

    Python学习笔记之 (set)集合 & 迭代器 & 函数 & 匿名函数 & 高阶函数 set set:类似di...

  • 数学01

    机器学习分类: 监督学 training set:feature + label test set:feature...

  • Set学习记录

    前言:参考文章ECMAScript 6 入门 本文连接:https://www.jianshu.com/p/0f9...

  • 基础篇

    Linux学习 一、特殊权限set_uid、set_gid、stick_bit 1、set_uid该权限针对二进制...

  • kotlin中List/Set/Map等集合(1)

    List/Set/Map等集合学习笔记###

  • kotlin中List/Set/Map等集合(2)

    List/Set/Map等集合学习笔记###

  • Java 集合Hashtable源码深入解析

    概要 前面,我们已经系统的对List进行了学习。接下来,我们先学习Map,然后再学习Set;因为Set的实现类都是...

  • 2022-04-30_nginx之proxy_set_heade

    20220430_nginx之proxy_set_header指令学习笔记.md 1概述 proxy_set_he...

网友评论

      本文标题:Set学习

      本文链接:https://www.haomeiwen.com/subject/wmsymftx.html