因为Set中存放的数据都是不会重复的数据,我们在编写JS代码的时候,因此我们可以利用Set来帮助我们更便捷地完成许多的事!

1、JS中Set的定义:

var set = new Set();

2、JS中Set的遍历:

set .forEach(function (element, sameElement, set) {console.log(element);}

3、JS中Set的操作方法:
(1):数组与Set之间的转换:

  • 一:数组转Set:

         var arr = ["1","2","1","2","3","1"];var set = new Set(arr);//得到一个新的Set:{"1","2","3"};
    
  • 二:Set转数组:

      var arr1= Array.from(set );//得到一个新的数组:["1","2","3"];
    

(2):使用Set给数组去重:

         //定义一个新的数组:var arr = ["1","2","1","2","3","1"];
  • 方法一:

             var arr1 = Array.from(new Set(arr));//得到一个新的数组:["1","2","3"];
    
  • 方法二:

          var arr1 = [...new Set(arr)];//得到一个新的数组:["1","2","3"];
    

(3):求两个Set的并集,交集,差集:

         var arr1 = ["1","2","3"];var arr2 = ["1","2"];var set1= new Set(arr1);var set2= new Set(arr2);//并集后:var newSet1 = new Set([...set1,...set2]);//得到一个新的Set:{"1","2","3"};//交集后:var newSet2 = new Set([...set1].filter(x => set2.has(x)));//得到一个新的Set:{"1", "2"};//差集后:var newSet3 = new Set([...set1].filter(x => !set2.has(x)));//得到一个新的Set:{"3"};

至此,在JS中使用Set的使用方法暂时写到这儿,以后想起来再更新。

如您在阅读中发现不足,欢迎留言!!!

JavaScript中Set的使用相关推荐

  1. 浅析 JavaScript 中的 函数 uncurrying 反柯里化

    柯里化 柯里化又称部分求值,其含义是给函数分步传递参数,每次传递参数后部分应用参数,并返回一个更具体的函数接受剩下的参数,这中间可嵌套多层这样的接受部分参数函数,直至返回最后结果. 因此柯里化的过程是 ...

  2. JavaScript中,this的绑定规则

    对于 JavaScript 新手来说,this 是非常基础同时也难以理解的知识点. 比如下面的代码,this 指向就有三种方式. 在<你不知道的 JavaScript>一书中,我总算比较清 ...

  3. Javascript中undefined,NaN等特殊比较

    以下内容转自: http://blog.csdn.net/hongweigg/article/details/38090093 1.问题:在Javascript中,typeof(undefined) ...

  4. Javascript中二进制数据处理方法

    Javascript中二进制数据处理方法 转载于:https://www.cnblogs.com/motadou/archive/2012/02/19/2358514.html

  5. JavaScript 中的有限状态机

    http://www.ibm.com/developerworks/cn/web/wa-finitemach/ JavaScript 中的有限状态机 Page navigation 系列文章 有限状态 ...

  6. 在Javascript中使用面向对象的编程

    by Mike Koss March 26th, 2003 这是一篇,我个人认为最好的,Javascript面向对象编程的文章.翻译不好的地方,还望大家指正,谢谢. 如果您需要,可以访问下面的地址取得 ...

  7. 取出url中的字符_如何在JavaScript中解析URL:例如主机名,路径名,查询,哈希?...

    统一资源定位符(缩写URL)是对Web资源(网页,图像,文件)的引用.URL指定资源位置和检索资源的机制(http,ftp,mailto). 例如,这是此博客文章的URL: 通常,您需要访问URL的特 ...

  8. 在javascript中判断类型

    String 一个字符串始终是一个字符串,所以这一块是很容易.除非使用new(new String)调用,否则typeof将返回"object".所以也要包含那些可以使用的字符串i ...

  9. JavaScript中几个重要的知识点(1) ---- 面向对象

    JavaScript中几个最重要的大知识点 面向对象 DOM事件 异步交互ajax 面向对象 在JS中可以把任意的引用和变量都看成是一个对象.面向对象的主要三个表现形式: 封装 继承 多态 1. 封装 ...

  10. javascript中实例方法与类方法的区别

    在javascript中,类有静态属性和实例属性之分,也有静态方法和实例方法之分 类属性(静态属性):通过类直接访问,不需要声明类的实例来访问 类方法(静态方法):通过类直接访问,不需要声明类的实例来 ...

最新文章

  1. 【多图】近距离接触甲骨文总裁马克赫德,Oracle在上海香格里拉酒店数据中心优化专题研讨会...
  2. mpython掌控板作品_第1课 Arduino micro:bit 掌控板 创客教育常用的3类主控板
  3. java语言复制数组的四种方法
  4. phpstrom php cli,在docker中的PhpStorm 2017.1远程php-cli:配置php.ini文件不存在
  5. HttpStatusCode 枚举
  6. 如何在服务器运行脚本精灵,脚本精灵循环方式教程
  7. 企业办理CMMI认证是怎么收费的?
  8. Cobalt Strike Profile 学习记录
  9. 4G的小程序与5G的Chromium OS?
  10. ddr3ddr4 lpddr4速率_Ddr2,ddr3,ddr4内存条的读写速率
  11. Oracle中和计算总工资,Oracle求部门员工工资占总工资的比率
  12. 恢复U盘未分配空间怎么合并,u盘分区扩展卷不显示怎么办
  13. 认识和选用常用的几种 GPRS 模块(转)
  14. Hadoop大数据原理(3) - 分布式计算框架MapReduce
  15. Spring Actuator介绍及使用
  16. 帆软设计器连接远程服务器,帆软设计器远程连接数据库问题
  17. 统计工作随笔—同比与环比(同期为负值)、百分点
  18. DApp公链选择需要考虑的问题
  19. 用c语言实现cos(x)与sin(x) 函数以及“绝对值函数”和“阶乘函数”
  20. js音乐播放器的实现以及可视化

热门文章

  1. Sentence Centrality Revisited for Unsupervised Summarization
  2. vscode vuejs项目import报错找不到模块“@/assets/image/BackGroun.png”或其相应的类型声明。
  3. 5种常见的重复形式,平面设计手法进阶学习
  4. 消费机 mysql,中控消费机软件常见问题|中控CM20消费机教程
  5. matlab 符号值转为实数,Matlab:在实现二进制到实数转换的公式时,无法获得唯一的有理数Part1...
  6. 连英文都不懂怎么学python_不懂英文能学Python吗?
  7. 单片机——8位数码管循环显示0-7
  8. 连通块(信息学奥赛一本通 - T1335)
  9. POI导出Excel(用户自己选择路径)
  10. 阿里云服务器web项目启动连接mysql_eclipse web项目部署到阿里云服务器