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. FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库

    ​<FFmpeg开发实战:从零基础到短视频上线>一书的例程主要测试本地的音视频文件,当然为了安全起见,很多网络视频都采用了https地址.FFmpeg若要访问https视频,就必须集成第三 ...

  2. 力扣38(java)-外观数列(中等)

    题目: 给定一个正整数 n ,输出外观数列的第 n 项. 「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述. 你可以将其视作是由递归公式定义的数字字符串序列: count ...

  3. Log4j漏洞不仅仅是修复,更需要构建有效预警机制

    ​简介:软件的漏洞有时不可避免,根据Gartner的相关统计,到 2025 年,30% 的关键信息基础设施组织将遇到安全漏洞.日志服务SLS,可帮助快速部署一个预警机制,使得漏洞被利用时可以快速发现并 ...

  4. NopCommerce 多数据库方案

    本文转自:http://www.cnblogs.com/YUTOUYUWEI/p/5538200.html 有时候一个项目需要连接多个数据库,以实现不同数据库的数据在同个项目的共享. 如果已经安装了n ...

  5. SpringBoot序列化、反序列化空字符串为null的三种方式

    一.需求:接收前端传入的""空字符串参数,有时候我们需要把它转为null SpringBoot项目 方式:①Jackson(推荐).②切面+反射.③注解+切面+反射 后两种方式,未 ...

  6. go 操作 Excel

    文档地址: https://xuri.me/excelize/zh-hans/ package main import ( "fmt" "github.com/xuri/ ...

  7. DNS(1) -- DNS服务及dns资源类型

    目录 1.1 DNS服务概述 1.2 DNS域名结构 1.3 DNS解析原理 1.3.1 DNS查询类型 1.3.2 解析答案 1.4 DNS资源记录类型 1.1 DNS服务概述 DNS(Domain ...

  8. SpringBoot-mybatis-plus 分页

    前言: 想必数据分页对于每一个程序员并不陌生,针对分页查询功能代码实现上:肯定是代码简洁明了且能达到分页的效果会更好! 现在我将基于SpringBoot - mybatisPlus分页查询的方法总结如 ...

  9. ios系统的css兼容问题处理和iOS上网页滑动不流畅问题

    1.H5网页touch滑动的时候在苹果手机上出现不流畅的问题 -webkit-overflow-scrolling 用来控制元素在移动设备上是否使用滚动回弹效果. 解决办法:给所有网页添加如下样式 b ...

  10. C++ 类的继承(Inheritance)

    一.继承(Inheritance) C++有一个很好的性质称为inheritance(继承),就是声明一个class(derived class),把另一个或多个class(base class)的所 ...