做网站和维护网站,帝国做网站是选择静态还是伪静态,合肥seo建站,南阳做网站的公司在ES6之前#xff0c;存储数据的结构主要有两种#xff1a;数组、对象。 在ES6中新增了另外两种数据结构#xff08;存放数据的方式#xff09;#xff1a;Set、Map#xff0c;以及他们的另外形式WeakSet、WeakMap。
Set的基本使用
Set是一个新增的数据结构#xff0c…在ES6之前存储数据的结构主要有两种数组、对象。 在ES6中新增了另外两种数据结构存放数据的方式Set、Map以及他们的另外形式WeakSet、WeakMap。
Set的基本使用
Set是一个新增的数据结构可以用来保存数据类似于数组但是和数组的区别是元素不能重复。创建Set需要通过Set构造函数暂时没有字面量创建的方式。
1 创建Set结构
// 1.创建Set结构
const set new Set()
// 想要向Set类型中添加数据使用add()
set.add(10)
set.add(20)
set.add(40)// Set中元素不能重复如果重复添加同一个数值最终只存在一个
set.add(10)
console.log(set);2Set结构添加对象时特别注意
// 1.创建Set结构
const set new Set()
// 想要向Set类型中添加数据使用add()
set.add(10)
set.add(20)
set.add(40)// 2.添加对象时特别注意
// 如果重复向Set类型的元素中添加多个对象会显示这两个对象都在内存中因为这是两个不同的对象,其中保存的是不同的地址
set.add({})
set.add({})// 但是使用下面这种方式创建对象
const obj {}
// 这种方式向set中添加对象添加的是同一个对象
set.add(obj)
set.add(obj)console.log(set);3应用场景-给数组去重
// 3.对数组去重去除重复的元素
const arr [33, 10, 25, 30, 33, 26]const arrSet new Set(arr) // Set()括号中传入可迭代对象
const newArr1 Array.from(arrSet) // arrSet实际上还是Set类型将它变换为数组类型
const newArr [...arrSet] // Set类型的也支持使用展开运算符console.log(newArr,newArr1);