先复习一下异步的概念:多个操作可以同时进行
了解了这个概念之后,介绍一下工作中经常用到的的promise
第十一个知识点:promise-----承诺
就是一个对象,用来传递异步操作的数据(消息)
peding(等待,处理中) ---> resolve(完成,fullFilled)
---->rejectd(拒绝,失败)
使用:
var p1 = new Promise(function(resolve,reject){
//resolve成功了
//reject失败了
});
var p1 = new Promise(function(resolvve,reject){
if(异步处理成功了){
resolve(成功的数据)
}else{
reject(失败原因)
}
})
p1.then(成功(resolve),失败(reject))


promise用用:ajax配合promise


第十二个知识点:catch -----用来捕获错误

第十三个知识点:all ------全部,用于将多个Promise对象,组合,包装成一个全新的promise实例

所有的promise对象,都正确,才走成功
否则,只要有一个错误,是失败了
第十四个知识点:Promise.race ----返回也是一个promise对象
最先能执行的promise结果,哪个最快,用哪个

Promise.resolve() --------生成一个成功的promise对象
语法:Promise.resolve(value)
Promise.resolve(Promise)

第十五个知识点:Generrator -----生成器
是一个函数
可以遍历,Generrator就是一个状态机
语法:
function show(){ //普通函数
}
function* show(){ //generrator函数
yield xxx
}
形式上:
a).函数名字前面有*
b).函数内部使用yield语法



next可以带参数:
给上一个yield的值

for....of循环 用来循环数组和Map对象,还可以循环generrtor函数

generrator函数放在对象里面

网友评论