文章目录
Set和Map数据结构
Set数据结构
一、Set数据结构是什么?
💡 Set数据结构是ES6新增的数据结构,是一个类似于数组的数据结构,按照索引排列
二、Set的使用
创建 Set 数据结构
语法 var s = new Set([数据1, 数据2, 数据3…])
const s = new Set([100, 200, 300])
数据结构的属性、方法
1. size 属性
**语法:** 数据结构.size
该数据结构中有多少个数据
const s = new Set([100, 200, 300])
console.log(s);
console.log(s.size);
2. add() 方法
**语法: ** 数据结构.add(数据)
向该数据结构添加内容
const s = new Set([100, 200, 300])
s.add(400)
console.log(s);
3. has() 方法
语法 数据结构.has(数据)
查找Set中是否有该数据
true 该数据结构内有该数据
false 该数据结构内没有该数据
const s = new Set([100, 200, 300])
console.log(s.has(100));
console.log(s.has(500));
4. delete()方法
语法 数据结构.delete(数据)
删除数据
const s = new Set([100, 200, 300])
s.delete(100)
console.log(s);
5. clear() 方法
语法 数据结构.clear()
清除该数据结构内所有内容
const s = new Set([100, 200, 300])
s.clear()
console.log(s);
6. forEach() 方法
语法 数据结构.forEach(function(value, key, origin){})
const s = new Set([100, 200, 300])
s.forEach(function(value, key, origin){
console.log(value, key, origin);
})
Set 的特点
不接受重复数据
案例: 数组去重
利用Set不接受重复数据的特点封装函数给数组去重
function unique (arr) {
return Array.from(new Set(arr))
}
var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}];
console.log(unique(arr))
Map数据结构
一、Map数据结构是什么?
💡 Map数据结构是一个类似于对象的数据结构,它的key可以是任何数据类型, 可以被看做为一个 值 = 值 的数据结构
二、Map的使用
创建 Map 数据结构
语法: var m = new Map( [ [key, value]
Map 数据结构的属性、方法
1. size 属性
语法 数据结构.size
该数据结构内有多少个数据
var m = new Map([ ['name', '小花'], ['age', 18] ])
console.log(m);
console.log(m.size);
m.set('time', '两年半')
console.log(m);
2. set() 方法
数据结构.set(key, value)
向该数据结构添加内容
var m = new Map([ ['name', '小花'], ['age', 18] ])
console.log(m.set('sex','男'));
3. get() 方法
数据结构.get(key)
返回值 该数据结构内key对应的value
var m = new Map([ ['name', '小花'], ['age', 18] ])
console.log(m.get('name'));
4. has() 方法
数据结构.has(key)
该数据结构中是否有该数据
true
false
var m = new Map([ ['name', '小花'], ['age', 18] ])
console.log(m.has('name'));
5. delete() 方法
数据结构.delete(key)
删除该数据结构内某一个数据
var m = new Map([ ['name', '小花'], ['age', 18] ])
m.delete('name')
6. clear() 方法
数据结构.clear()
清除该数据结构里面的所有内容
var m = new Map([ ['name', '小花'], ['age', 18] ])
m.clear()
7. forEach()
数据结构.forEach(function(value, key, origin){})
var m = new Map([ ['name', '小花'], ['age', 18] ])
m.forEach(function(value, key, origin){
console.log(value, key, origin);
})