Es6-set、map与模块化

一、Set和WeakSet

set结构的键名和键值是同一个值。

1、创建Set

2、Set的参数必须是可遍历的对象:数组,伪数组,字符串,set,map

3、方法

1、add()使用  add方法添加成员

  数组去重:

    var arr = [1,2,3,4,5,1,1]

    var set = new Set(arr)

    console.log([...set ])

2、size属性:获取成员个数

3、delete()方法:用户删除Set机构中的指定值,删除成功返回:true,删除失败返回:false。

4、clear()方法:清除所有成员。

5、has()方法:判断set结构

6、entries()方法:

7、

8、

4、WeakSet()结构同样不会存储重复的值,不同的是,它的成员必须是引用类型的值

二、Map和WeakMap用法

键名可以是任何数据类型

1、创建

1、set()方法的作用:给实例设置一对键值对,返回map实例

2、get()方法的作用:获取指定键名的键值,返回键值

3、delete()方法的作用:删除指定的键值对,删除成功返回:true,否则返回:false

4、clear()

5、has()

6、entries()

7、keys和values

8、forEach

9、size

Weakmap

WeakMap结构的键名必须是引用类型的值,也是它和Map最大不同之处

介绍下 Set、Map的区别?

1、Map是键值对,Set是值的集合

2、Map可以通过get方法获取值,而set不能,因为它只有值

3、都能通过迭代器进行for……of遍历

4、Set的值是唯一的可以做数组的去重,Map由于没有格式限制,可以做数据存储

5、map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关系。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序

三、ES6的Promise对象

1、Promise设计初衷

(1)、解决回调地狱(回调函数的层层嵌套)

(2)、异步操作

2、异步操作

(1)、定时器

(2)、事件

(3)、Ajax请求

(4)、generator函数(生成器函数)

(5)、promise (.then .catch方法是异步的)

(6)、async/await

3、回调地狱:回调函数的层层嵌套

4、Promise:(重点)

(1)、创建:new Promise(function(resolve , reject){})

  resolve :成功         reject:失败

初始状态:pending 成功状态:fulfilled 失败状态:rejected

初始状态=>成功状态 初始状态=>失败状态 (不可逆转)

(2)、执行:

promise对象.then(function(res){})    成功   

第一个then方法里面的参数是resolve方法里面的参数 

下一个then方法里面的参数是第一个then的返回值

promise对象.catch(function(res){})   失败   

四、ES7中 的Async/await

async用于申明一个function是异步的,返回一个promise对象,而await可以认为是async wait的简写,等待一个异步方法执行完成。async必须声明的是一个function,await必须在声明的函数内部使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值