<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body> <script type="text/javascript">
1.集合(Set):集合里的元素是唯一的
2.集合可用的方法
add(value):向集合中添加一项
remove(value):从集合中移除一项
has(value):如果值在集合中,返回true,否则返回false
clear():移除集合中所有的项
size():返回集合中包含元素的数量
values():返回一个包含集合中所有值的数组
3.has(value)方法:
this.has=function(value){
return value in items;
}
4.add(value)方法:
this.add=function(value){
if(!has(value)){
items[value]=value;
return true;
}
return false;
}
5.remove(value)方法
this.remove=function(value){
if(has(value)){
delete items[remove];
return true;
}
return false;
}
6.clear()方法:
this.clear=function(){
items={}
}
7.size()
this.size=function(){
return Object.keys(items).length;
}
8.values()
this.values=function(){
return Object.keys(items);
}
</script>
</body>
</html>

js数据结构--集合的更多相关文章

  1. (js描述的)数据结构[集合结构](6)

    (js描述的)数据结构[集合结构](6) 一.集合结构特点 1.集合中的元素不能重复. 2.集合是无序的. 二.集合的代码实现 function Set() { this.items = {} //1 ...

  2. 数据结构与算法 --- js描述集合

    js描述集合 function Set(){ this.datasource=[]; this.add=add; this.remove=remove; //this.size=size; //thi ...

  3. JS数据结构之 Map

    JS数据结构之 Map Map介绍 Map(映射)是ES6引入的一种数据结构.这是一种存储键值对列表很方便的方法,类似于其他编程语言的哈希表. HashMap(哈希表),也叫做散列表.是根据关键码值 ...

  4. js算法集合(一) 水仙花数 及拓展(自幂数的判断)

    js算法集合(一) ★ 最近有些朋友跟我说对js中的一些算法感到很迷惑,知道这个算法到底是怎么回事,但是就是不会用代码把它写出来,这里我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法, ...

  5. js算法集合(二) javascript实现斐波那契数列 (兔子数列)

    js算法集合(二)  斐波那契数列 ★ 上一次我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法,这次,我们来对斐波那契数列进行研究,来加深对循环的理解.     Javascript实 ...

  6. js 遍历集合删除元素

    js 遍历集合删除元素 /** * 有效的方式 - 改变下标,控制遍历 */ for (var i = 0; i < arr.length; i++) { if (...) { arr.spli ...

  7. JS中集合对象(Array、Map、Set)及类数组对象的使用与对比

    原文地址 在使用js编程的时候,常常会用到集合对象,集合对象其实是一种泛型,在js中没有明确的规定其内元素的类型,但在强类型语言譬如Java中泛型强制要求指定类型. ES6引入了iterable类型, ...

  8. js library 集合

    js library 集合 查看已经开源的js library https://cdnjs.com/

  9. JS数据结构第三篇---双向链表和循环链表之约瑟夫问题

    一.双向链表 在上文<JS数据结构第二篇---链表>中描述的是单向链表.单向链表是指每个节点都存有指向下一个节点的地址,双向链表则是在单向链表的基础上,给每个节点增加一个指向上一个节点的地 ...

  10. JS数据结构与算法——栈

    JS数据结构与算法--栈 1.栈结构概念 栈(Stack)是一种先进后出(LIFO Last in First out)的线性表,先进栈的将会比后进栈的先出栈. 栈的限制是仅允许在一端进行插入和删除运 ...

随机推荐

  1. 通信原理知识点总结(XDU网信通原)

    因为感觉第2章和第7章内容特别乱,当时老师讲的时候好像也没有按照一个正确的顺序来讲,所以我就把这两部分的内容按照结构顺序整理了一下,这样更便于理解和记忆 第2章 无线信道传输特性 显示不全点链接看完整 ...

  2. Nginx之数据流代理stream模块简介和使用 ---九五小庞

    一.stream模块简介   stream模块一般用于TCP/UDP数据流的代理和负载均衡,通过stream模块我们可以代理转发tcp报文.ngx_stream_core_module模块从1.9.0 ...

  3. Composer 镜像原理 (1) —— 初识 Composer

    相关文章 Composer 镜像原理 (1) -- 初识 Composer Composer 镜像原理 (2) -- composer.json Composer 镜像原理 (3) -- 完结篇 何为 ...

  4. .NET for Apache Spark 入门演练

    .NET for Apache Spark 入门演练 微软官方文档: .NET for Apache Spark 入门 | Microsoft Learn 注意:由于本次在windows平台下进行演练 ...

  5. 理解TCP四次挥手

    以AB通电话举例: A的视角 A突然说,"现在几点了",进入FIN_WAIT_1 B回,"啊,10点了",A听到后不说话,进入FIN_WAIT_2 然后B说,& ...

  6. Redis从入门到放弃(3):发布与订阅

    1.介绍 Redis是一个快速.开源的内存数据库,支持多种数据结构,如字符串.哈希.列表.集合.有序集合等.除了基本的数据存储和检索功能外,Redis还提供了许多高级功能,其中之一就是发布订阅(Pub ...

  7. git:gitignore常用配置

    配置 在项目文件中添加.gitignore文件 .DS_Store node_modules /dist

  8. PyQt5清除数据(部分控件)

    # 清除文本框 self.textEdit_detail.clear() # 清楚表格所有行 self.tableWidget.setRowCount(0) self.tableWidget.clea ...

  9. P1880 [NOI1995] 石子合并 题解

    区间DP. 首先将其复制一遍(因为是环),也就是经典的破环成链. 设 \(f[i][j]\) 表示将 \(i\) 到 \(j\) 段的石子合并需要的次数. 有 \[f[i][j] = 0(i = j) ...

  10. .NET技术:懒惰与沉淀的平衡之道

    在过去的很多年里,我一直默默搬砖,而我们聚在博客园,目的只有一个:沉淀并为更多的.NET开发者提供更好的帮助. 疫情3年,个人经历了太多事情,感觉懒惰是最大的敌人.然而,在这里,我收获了许多宝贵的经验 ...