您的位置:首页 > 其它

ES6新增 Symbol数据类型+Set数据类型+Map数据类型

2020-08-06 11:47 85 查看

Symbol类型

是js第七种数据类型
5种基本类型+1种引用类型:
number string boolean null undefined
Object
第七种类型:Symbol 表示一种独一无二的数据

可以用作对象的属性

Set

它是一种类数组类型 (与Array对象很相似)
Set中不存在重复数据
方法:
add() 向set添加数据 返回值为当前set对象
delete() 删除指定数据
clear() 清空set结构
has() 判断set中是否包含某数据 true false
size set中元素的个数
forEach 遍历set结构

for…of 遍历iterator接口类型数据 Set、Array、字符串、Map

用途:数组去重:

//数组去重
// let singlArr = (arr) => {
//     let s = new Set();
//     arr.forEach(item => {
//         s.add(item);
//     });
//     // console.log(s);
//     //将set转换为array
//     return Array.from(s);
// };

// let arr=singlArr([1,2,3,24,23,42,432,34,234,2,1,3,24]);
// console.log(arr);
//数组去重
let singleArr = (arr) => {
return [...new Set(arr)];
};

let arr=singleArr([1,2,3,24,23,42,432,34,234,2,1,3,24]);
console.log(arr);

Map

是一种Hash结构(键值对)
和Object比较相似

方法:
size 结构中数据个数
set(key,value) 放入数据
get(key) 获取数据
has() 判断 true false
delete() 删除指定数据
clear() 清空
forEach 遍历

keys() values() entries()

for…of

//for of   遍历中item是一个数组  [key,value]
// for(let item of map){
//     console.log(item);
// }
//遍历过程中使用解构接收key和value
for(let [k,v] of map){
console.log(k,v);;
}

map相比object的特点是:key允许任意类型,而不像object只允许字符串和symbol

map作用:把dom对象以key的形式存储到map中,给该key赋值;用来在dom上存储一下自定义数据。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: