1.Set 和 WeakSet用法

news/2024/11/26 12:01:50/

    //实用操作

    var arr = [1, 1, 1, 2, 2, 2, 3, 33, 3,]

    var a = new Set(arr)

    console.log(Array.from(arr));//(9) [1, 1, 1, 2, 2, 2, 3, 33, 3]

    //添加

    var s = new Set([1, 2, 3]);

    //或者用add()

    s.add('a');

    s.add('b');

    s.add('c');

    console.log(s);//Set(6) {1, 2, 3, 'a', 'b', …}

    //只有一个,不会有相同的值

    // size属性:获取成员的个数。

    console.log(s.size);//6

    // delete( )方法:用户删除Set结构中的指定值,删除成功返回:true,删除失败返回:fasle

    s.delete('a');

    console.log(s);//Set(5) {1, 2, 3, 'b', 'c'}

    // clear( )方法:清除所有成员。

    s.clear()

    console.log(s);//Set(0) {size: 0}

    // has( )方法:判断set结构中是否含有指定的值。如果有,返回true;如果没有,返回fasle。

    console.log(s.has(1));//false

    // entries( )方法:返回一个键值对的遍历器。

    var b = new Set(['a', 'b', 'c']);

    console.log(b.entries());//SetIterator {'a' => 'a', 'b' => 'b', 'c' => 'c'}

    //keys( )方法:返回键名的遍历器。

    // values()方法:返回键值的遍历器。

    console.log(b.keys());//SetIterator {'a', 'b', 'c'}

    console.log(b.values());//SetIterator {'a', 'b', 'c'}

    for (let [i, v] of b.entries()) {

        console.log(i + '' + v);//aa        bb         cc

    }

    // forEach()方法:遍历每一个成员。

    b.forEach(function (value, key) {

        console.log(value, key);//a a  b b   c c

    })

    // WeakSet结构同样不会存储重复的值,不同的是,它的成员必须是对象类型的值。

    let ws = new WeakSet([{ "age": 18 }])

    console.log(ws);//WeakSet {{…}}

    // 屌丝写法

    // let ws = new WeakSet([1, 2])

    // console.log(ws);


http://www.ppmy.cn/news/85354.html

相关文章

Linux之firewalld防火墙基础

目录 一、firewalld的简介 二、iptables与firewalld的联系与区别 1)iptables与firewalld的联系 netfilter Firewalld/iptables 2)iptables与firewalld的区别 区别一: 区别二: 区别三: 三、firewalld区域 1…

1688商品详细信息价格SKU接口

随着新零售时代的到来,越来越多的企业开始关注电商平台,其中1688平台作为国内重要的B2B电商平台之一,对于企业发展、产品销售等方面有着重要的价值。在使用1688平台出售商品时,如何优化商品详情页、提高搜索排名、增加商品曝光度&…

go sync包

官方文档:https://pkg.go.dev/sync 临界区 临界区(critical section)是指包含有共享数据的一段代码,这些代码可能被多个线程访问 或修改。临界区的存在就是为了保证当有一个线程在临界区内执行的时候,不能有其他任何线程被允许在临界区执行…

SID 2023观察:显示行业的新潮向是什么?

作为全球最大的显示行业盛会,每年的SID国际显示周都会成为外界关注的焦点,并被赞誉为显示行业的“奥斯卡”。 今年的SID 2023自然也不例外,众多显示“老将”无一缺席。特别是迈入而立之年的京东方,可以说是第61届SID上最耀眼的存…

遥感中常用的植被指数

遥感中常用的植被指数 归一化差异植被指数 (NDVI)增强植被指数 (EVI)叶面积植被指数(LAI)土壤含水量(SWC)微波植被光学厚度(VOD) 归一化差异植被指数 (NDVI) 其值的范围是-1-1,一般绿色植被区的范围是0.2-0.8。负值表…

领导让我搭建Appium环境,还好我看到了这篇文章

首先介绍一下,Appium是一个APP的自动化框架,可用于测试APP、网页(web)、混合型应用,而且是跨平台(可以针对不同平台用一套api来编写测试用例)的。 pythonAppium自动化测试框架【项目实战合集】,轻松掌握app高级自动化测试_哔哩哔…

element-ui拖拽上传及问题解决(drag的使用注意事项)

element-ui拖拽上传及问题解决(drag的使用注意事项) 上传组件(:drag“true”) <template><el-uploadclass"avatar-uploader"action"":show-file-list"false":on-success"handleAvatarSuccess":before-upload"beforeAva…

MySQL_6 自连接和外连接

目录 一、自连接 1.概述 : 2.语法 : 3.演示 : 二、外连接 1.为什么需要外连接&#xff1f; 2.外连接的定义 : 3.外连接的演示 : 1 左外连接 2 右外连接 3 对部门表问题的解决 一、自连接 1.概述 : 自连接是指在同一张表上的连接查询&#xff08;将同一张看做两张表)&a…