ES6中set的基础、map数据结构和DOM classList的基础用法

简介: 学习ES6中set的基础、map数据结构和DOM classList的基础用法。

目录


一、set基础用法(add,delete,has,clear)


1.set定义与初始化数据


2.add添加


3.delete删除指定元素


4.has查询指定元素


5.clear删除全部


二、map数据结构(set,get,delete,size,clear,has(指定key的元素), keys)


1.set get 基础用法


2.delete 删除指定元素


3.size获取map的长度 has获取指定元素


4.获取map的所有的key


5.clear删除


三、DOM classList的基础用法


基本效果(可以优化)


代码段


一、set基础用法(add,delete,has,clear)


1.set定义与初始化数据

const set = new Set([1,2,3,4,4]);
console.log(set);//会把重复的自动删除 1,2,3,4

2.add添加

const set = new Set([1,2,3,4,4]);
set.add(5).add(6);
console.log(set);//1,2,3,4,5,6


3.delete删除指定元素

const set = new Set([1,2,3,4,4]);
set.add(5).add(6);
set.delete(6);
console.log(set);//1,2,3,4,5,


4.has查询指定元素

const set = new Set([1,2,3,4,4]);
set.add(5).add(6);
set.delete(6);
console.log(set.has(6));//false


5.clear删除全部

const set = new Set([1,2,3,4,4]);    
set .clear();
console.log(set);//set(0)


二、map数据结构(set,get,delete,size,clear,has(指定key的元素), keys)


1.set get 基础用法

const Info = {height:190,major:"计算机"};
const map = new Map();
//设置map的值 key->value
map.set("realname","张三");
map.set("age",18);
map.set(Info,"个人详细信息");
//get得到map的值 参数:key
console.log(map.get("realname"));


2.delete 删除指定元素

//删除map的值 参数:key
map.delete("age");


3.size获取map的长度 has获取指定元素

//获取map的长度
console.log(map.size);
console.log("age是否存在:" + map.has("age"));//falase 上文以删除


4.获取map的所有的key

const keys = map.keys();
console.log(keys);


5.clear删除

map.clear();



三、DOM classList的基础用法


基本效果(可以优化)

image.png

代码段

<!DOCTYPE html>
<html>
  <head>
  <meta charset="utf-8">
  <title></title>
  <style type="text/css">
    .class1{
    background: red;
    }
    .class2{
    color:#fff;
    }
    .class3{
    font-size: 20px;
    }
  </style>
  </head>
  <body>
  <div id="demo">我是一个容器</div>
  <button id="btn1">控制颜色</button>
  <button id="btn2">控制字体大小</button>
  <button id="btn3">判断是否有颜色样式</button>
  <button id="btn4">判断索引1的类名</button><br/>
  <button id="btn5">删除颜色样式</button>
  <button id="btn6">控制字体toggle方式</button>
  <script>
  let Demo = document.getElementById("demo");
  let btn1 =  document.getElementById("btn1");
  let btn2 =  document.getElementById("btn2");
  let btn3 =  document.getElementById("btn3");
  btn1.addEventListener('click',()=>{
    //classlist 添加多个样式
                Demo.classList.add("class1","class2");
    });
  btn2.addEventListener('click',()=>{
    Demo.classList.add("class3")
    });
    // classList.contains 判断是否存在某个样式
  btn3.addEventListener('click',()=>{
    console.log(Demo.classList.contains("class1")?"存在class1的样式":"不存在class1的样式");
    });
    // classList.item 判断指定下标的类名
  btn4.addEventListener('click',()=>{
    console.log(Demo.classList.item(1));
    });
    // classList.remove 删除样式
  btn5.addEventListener('click',()=>{
    Demo.classList.remove("class1","class2");
    });
  btn6.addEventListener('click',()=>{
    Demo.classList.toggle("class3");
    //第二个参数 不管样式存在与否 true就强制加上  false就强制移除
    Demo.classList.toggle("class3",false);  
    });
  </script>
  </body>
</html>


相关文章
|
2月前
|
存储 Java
告别混乱!用Java Map优雅管理你的数据结构
【10月更文挑战第17天】在软件开发中,随着项目复杂度增加,数据结构的组织和管理至关重要。Java中的Map接口提供了一种优雅的解决方案,帮助我们高效、清晰地管理数据。本文通过在线购物平台的案例,展示了Map在商品管理、用户管理和订单管理中的具体应用,有效提升了代码质量和维护性。
97 2
|
21天前
|
算法
你对Collection中Set、List、Map理解?
你对Collection中Set、List、Map理解?
55 18
你对Collection中Set、List、Map理解?
|
14天前
|
存储 缓存 安全
只会“有序无序”?面试官嫌弃的List、Set、Map回答!
小米,一位热衷于技术分享的程序员,通过与朋友小林的对话,详细解析了Java面试中常见的List、Set、Map三者之间的区别,不仅涵盖了它们的基本特性,还深入探讨了各自的实现原理及应用场景,帮助面试者更好地准备相关问题。
51 20
|
1月前
|
存储 C++ 容器
【C++】map、set基本用法
本文介绍了C++ STL中的`map`和`set`两种关联容器。`map`用于存储键值对,每个键唯一;而`set`存储唯一元素,不包含值。两者均基于红黑树实现,支持高效的查找、插入和删除操作。文中详细列举了它们的构造方法、迭代器、容量检查、元素修改等常用接口,并简要对比了`map`与`set`的主要差异。此外,还介绍了允许重复元素的`multiset`和`multimap`。
30 3
【C++】map、set基本用法
|
1月前
|
存储 算法 C++
【C++】unordered_map(set)
C++中的`unordered`容器(如`std::unordered_set`、`std::unordered_map`)基于哈希表实现,提供高效的查找、插入和删除操作。哈希表通过哈希函数将元素映射到特定的“桶”中,每个桶可存储一个或多个元素,以处理哈希冲突。主要组成部分包括哈希表、哈希函数、冲突处理机制、负载因子和再散列,以及迭代器。哈希函数用于计算元素的哈希值,冲突通过开链法解决,负载因子控制哈希表的扩展。迭代器支持遍历容器中的元素。`unordered_map`和`unordered_set`的插入、查找和删除操作在理想情况下时间复杂度为O(1),但在冲突较多时可能退化为O(n)。
22 5
|
2月前
|
存储 Java 开发者
Java中的Map接口提供了一种优雅的方式来管理数据结构,使代码更加清晰、高效
【10月更文挑战第19天】在软件开发中,随着项目复杂度的增加,数据结构的组织和管理变得至关重要。Java中的Map接口提供了一种优雅的方式来管理数据结构,使代码更加清晰、高效。本文通过在线购物平台的案例,展示了Map在商品管理、用户管理和订单管理中的具体应用,帮助开发者告别混乱,提升代码质量。
34 1
|
3月前
|
Go 定位技术 索引
Go 语言Map(集合) | 19
Go 语言Map(集合) | 19
|
3月前
|
存储 前端开发 API
ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
该文章详细介绍了ES6中Set和Map数据结构的特性和使用方法,并探讨了它们在前端开发中的具体应用,包括如何利用这些数据结构来解决常见的编程问题。
ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
|
4月前
|
存储 安全 Java
java集合框架复习----(4)Map、List、set
这篇文章是Java集合框架的复习总结,重点介绍了Map集合的特点和HashMap的使用,以及Collections工具类的使用示例,同时回顾了List、Set和Map集合的概念和特点,以及Collection工具类的作用。
java集合框架复习----(4)Map、List、set
|
4月前
|
Java
【Java集合类面试二十二】、Map和Set有什么区别?
该CSDN博客文章讨论了Map和Set的区别,但提供的内容摘要并未直接解释这两种集合类型的差异。通常,Map是一种键值对集合,提供通过键快速检索值的能力,而Set是一个不允许重复元素的集合。