首页 > 其他分享 >ES6-Set

ES6-Set

时间:2023-01-11 21:55:36浏览次数:38  
标签:ES6 Set console log add 参数 new

一。怎么用:

1.和数组比较,数组是一系列有序的数据集合,Set是无序、没有重复值的数据集合

2.数组的创建有两种字面量和new Array(1,2,3),set只能通过new Set()创建set实例;格式是{数据成员,数据成员...}

 

        const s = new Set();
        s.add(1);
console.log(s.add(1))//{1}返回的是添加过成员的s s.add(2);/add方法每次只能加一个 s.add(1);//没有重复值 console.log(s);//{1, 2}

二。方法

1.add方法

        const s = new Set();
        s.add(1).add(2).add(3);//可以连续打点调用
        console.log(s);

2。has方法

        const s = new Set();
        s.add(1).add(2).add(3);
        console.log(s);
        console.log(s.has(1));//true 看里面是否有1这个成员

3.delete、clear方法

        const s = new Set();
        s.add(1).add(2).add(3);
        console.log(s);
        s.delete(1);//删除成员1 注意删除不存在的成员什么也不会发生;
        console.log(s);//{2, 3}
        s.clear();
        console.log(s);//{size: 0} 清空成员

4.forEach方法,有两个参数,第一个是回调函数,第二个参数可以指定回调函数中的this,第二个参数不写默认是undefined

        const s = new Set();
        s.add(1).add(2).add(3);
        s.forEach(function (value, key, set) {
            console.log(value, key, set);
            console.log(this);
        }, document)

打印如下:

 

 

①根据遍历顺序(成员添加进集合的先后),value依次代表遍历到的每个成员,key也是依次代表遍历到的每个成员;set参数就是代表s本身(同一引用地址);

②这些名字可以用别的,这只是形参名;这三个参数可以省略,但是顺序是定死的,参数列表中第一个参数:永远是依次代表遍历到的每个成员;参数列表中第二个参数:永远也是依次代表遍历到的每个成员;参数列表中第三个参数:永远代表调用这个方法的Set实例(同一引用地址);

③如果回调函数写成箭头函数,由于箭头函数没有自己的this,所以第二个参数指定回调函数中的this无效,会根据箭头函数查找this的方式去查找this

 

标签:ES6,Set,console,log,add,参数,new
From: https://www.cnblogs.com/zhoushangquan/p/17042772.html

相关文章

  • 008statefulset的pvc命名规则
    有状态服务的存储状态下面我们来继续探究StatefulSet对存储状态的管理机制,在前面我们创建Pod需要使用存储的时候,只需要在资源文件中添加spec.volumes字段声明使用volume就......
  • maven配置文件settings.xml没生效导致报错 401 ReasonPhrase: Unauthorized
    1、查看当前mavne正在使用的setting.xmlmvnhelp:effective-settings-DshowPasswords=true2、settings.xml存在于两个地方Maven安装的地方:$M2_HOME/conf/settings.xm......
  • How to check character set in Oracle
    概述总结一下查询oracle字符集的方法解决方案方法一:SQL>SELECTvalue$FROMsys.props$WHEREname='NLS_CHARACTERSET';VALUE$----------------------------......
  • ERROR: JAVA_HOME is not set and could not be found.
    问题描述:今天在启动Hadoop时发现显示报错:JAVA_HOMEisnotsetandcouldnotbefound。但我昨天明明还是启动成功的,那这不就是见鬼了???  问题解决:......
  • ES6 中 Promise对象使用学习
    转载请注明出处:Promise 对象是JavaScript的异步操作解决方案,为异步操作提供统一接口。它起到代理作用(proxy),充当异步操作与回调函数之间的中介,使得异步操作具备同步......
  • 读取appsettings.json
    先给出appsettings.json的参考结构,将以读取redis节点数据为例{"Logging":{"LogLevel":{"Default":"Information","Microsoft.AspNetCore":"Wa......
  • dart functionSet
    文件根据传入的路径,返回上N级目录///0表示当前路径,-1上一级路径返回值的最后面有////最多到达磁盘目录StringgetPathFromIndex(Stringpath,intindex){L......
  • (老jdbc的rowapper框架)老代码没setId 没设置主键id咋能保存成功的
    疑问1:老代码没setId 没设置主键id咋能保存成功的       并且老代码数据库的主键也不是自增,为什么没有设置主键id咋不报错  原因:看原来代码mapper......
  • 公司的JDBC框架 的save方法和saveSet方法有先查找是否更新还是插入
    一.公司的JDBC框架的save方法和saveSet方法执行操作:1.按下ctrl键,然后鼠标点击对应的方法,进去源码就能看到底层源码是先将数据去数据库查看主键,根据主键查看数据库有没有该......
  • git reset 回滚
    1.通过gitlog查到要回滚到的commitId比如:回滚到”第一次“,即jlasjdlfjsd944jdlsjf498ndla 第三次01038lsdjfsd第二次jlasjdlfjsd944第一次2.gitreset jlasjdl......