SET 数据类型
            是一个类似于 数组 的数据类型
            特点 : 不接受重复的相同的数据
                   同样的数据,在SET数据类型中,只能存储一次
            基本语法:
                通过构造函数来定义SET数据类型
                const set = new Set()   定义一个空set
                如果要在定义set的同时,进行赋值操作,必须要定义一格实参,是数组类型
                可以接收JavaScript任意支持的数据类型
                const set = new Set([1,2,3,4,5]);
                set数据类型没有 length 属性 有一个类似的属性 size 
                也是表示set数据类型,数据单元的个数,长度
                调用set数据单元,与数组语法类似,也是[]语法 
                直接使用 [] 语法调用,虽然有size属性,表示是单元个数,直接使用索引下标形式,结果是undefined
                需要使用 ... 将 set 数据类型,结构为一个数组 
                const arr = [...set];
                再使用[]语法,对arr进行操作
                操作的本质上,是结构之后对应的数组
        */ 
        const set = new Set([1,2,3,4,5,1,2,3,4,5,1,2,3,4,5]);
        console.log(set);//05_SET数据类型.html:41 Set(5) {1, 2, 3, 4, 5}
        console.log(set[0]);//undefined
        // 将set数据类型中的数据,结构为数组形式存储
        // const arr = [...set];
        // console.log(arr);
        // set类型的小应用---数组去重   
        // 有重复数据的数组
        const arr = [1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,1,2,3,4,5];
        // 将这个数组作为set类型的参数
        // set中只会存储不重复的数据
        // const set = new Set(arr);
        // console.log(set);
        // 再将set类型结构成数组
        // const newArr = [...set];
        const newArr = [...new Set(arr)];
        console.log(newArr);//1, 2, 3, 4, 5
        // set数据类型常用方法
        // (1) add()        set类型新增单元,参数是新增单元的数据
        // (2) delete()     set类型删除单元,参数是删除单元的数据
        // (3) clear()      set类型清除所有单元
        // (4) 使用 forEach 使用forEach循环遍历set单元
        //                  第一个参数和第二个参数,都是单元的数值
        //                  第三个参数,是set数据类型本身
        const set = new Set([1,2,3]);
        set.add('我是新增的');
        // set.delete(3);
        // set.clear();
        set.forEach((item,key,three)=>{
            console.log(item,key,three);//1 1 Set(4) {1, 2, 3, "我是新增的"}
                                        //2 2 Set(4) {1, 2, 3, "我是新增的"}  
                                        //3 3 Set(4) {1, 2, 3, "我是新增的"}
                        //我是新增的 我是新增的 Set(4) {1, 2, 3, "我是新增的"}
        })
        console.log(set);//Set(4) {1, 2, 3, "我是新增的"}

set数据类型的更多相关文章

  1. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

  2. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

  3. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  4. UniqueIdentifier 数据类型 和 GUID 生成函数

    UniqueIdentifier 数据类型用于存储GUID的值,占用16Byte. SQL Server将UniqueIdentifier存储为16字节的二进制数值,Binary(16),按照特定的格 ...

  5. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  6. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  7. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  8. SQL数据类型

    1.Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符串.最多8,000个字符. n varchar(n) 可变长度的字符串.最多8,000个字符.   varchar ...

  9. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型

    运算符 设定:a=10,b=20 . 算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**3 ...

  10. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

随机推荐

  1. 地址标准化服务AI深度学习模型推理优化实践

    简介: 深度学习已在面向自然语言处理等领域的实际业务场景中广泛落地,对它的推理性能优化成为了部署环节中重要的一环.推理性能的提升:一方面,可以充分发挥部署硬件的能力,降低用户响应时间,同时节省成本:另 ...

  2. 阿里云 EMAS Serverless 重磅发布

    简介: EMAS Serverless 是阿里云提供的基于Serverless技术的一站式后端开发平台,为开发者提供高可用.弹性伸缩的云开发服务,包含云函数.云数据库.云存储.静态网站托管等功能,可用 ...

  3. SRE技术保障平台-盯屏中心TAC: 混合云一站式告警运维平台

    简介: SRE技术保障平台-盯屏中心TAC: 混合云一站式告警运维平台 1.目标定位 1.1背景 告警管控平台种类繁多 告警出现后未及时发现处理最终导致故障产生 专有云监控能力拉起依赖版本升级,操作复 ...

  4. 1小时打造HaaS版小小蛮驴智能车

    简介: 2020年云栖大会上,阿里云发布了一款机器人"小蛮驴",瞬间激起千层浪,无人车,智能物流,机器人等一些概念又火热了一把. 借"小蛮驴"的东风以及火热的H ...

  5. KubeVela 上手(1)|让云端应用交付更加丝滑

    简介: KubeVela 是阿里云和微软共同发起的 OAM(Open Application Model)标准的技术实现,旨在打造统一.标准.跨环境的云端应用交付,省时省力,轻松简单 作者|KubeV ...

  6. 004—Orcad创建简单分裂元件

    004-Orcad创建简单分裂元件 以TPS545为例,先查看datasheet,管脚图,PCB封装.新建库,设置名称和part的数量,然后添加管脚,设定管脚属性.电源管脚要勾选Pin Visble. ...

  7. 开源相机管理库Aravis例程学习(五)——camera-api

    目录 简介 例程代码 函数说明 arv_camera_get_region arv_camera_get_pixel_format_as_string arv_camera_get_pixel_for ...

  8. 用Vue仿了一个类似抖音的App

    大家好,我是 Java陈序员. 今天,给大家介绍一个基于 Vue3 实现的高仿抖音开源项目. 关注微信公众号:[Java陈序员],获取开源项目分享.AI副业分享.超200本经典计算机电子书籍等. 项目 ...

  9. ADOBE FORM的一些相关资料

    虽然很多人觉得打印程序的开发很无聊(我也这么想),但在实际工作中,打印算是比较有意义的工作,所以还是值得学习的. 之前翻译过几篇Adobe Form的文章,其中的内容,可以帮助创建一些简单的打印示例, ...

  10. 超级简单实用的CSS3动画,增添网页效果

    有时候做网页,如果都写成静态的没有动态效果,犹如一张张图片,没有视觉感受,没有达到很好的视觉效果. 其实一些简单的CSS3动画,可以增添网页的动态感,使自己设计的网页更有视觉享受.1.图片有一定角度的 ...