异步操作 Promise,then/catch,async/await

栏目: JavaScript · 发布时间: 5年前

ajax

异步操作的原理:执行到需要的异步操作,会开始执行异步操作,不等执行完直接开始执行操作后面的语句,等语句执行完全再去看异步操作是否执行完成,完成就返回完成,没有就继续执行异步。

  • 常用的异步请求操作

const promise = new Promise(function(resolve, reject) {
  // ... 请求代码

  if (/* 异步操作成功 */){
    resolve(value);
  } else {
    reject(error);
  }
});
复制代码
  • then/catch

thenPromise 执行成功的语句

promise.then(function(res){});
复制代码

catchPromise 执行失败的语句

promise.catch(function(err){});
复制代码

常规用法

promise.then(function(res){
    
}).catch(function(err){
    
});
复制代码

then 滥用的话也是很恶心的,不断的then下去。所以出了一个终极解决方案。

  • async/await

async/awaitthen/catch 的完美版。作用与 then/catch 相同,只是用法上的区别。

每遇到一个 await 都会先返回,再往下执行。变成了同步操作!

async f1(){
 const res = await promise;
}
复制代码

可以使用 try/catch 监听 Promise 返回状态, try 为成功, catch 失败

async f1() {
 try{
   const res = await promise;
  }catch(err){
   console.log(err)
  }
}
复制代码

以上所述就是小编给大家介绍的《异步操作 Promise,then/catch,async/await》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

挑战程序设计竞赛

挑战程序设计竞赛

秋叶拓哉、岩田阳一、北川宜稔 / 巫泽俊、庄俊元、李津羽 / 人民邮电出版社 / 2013-7-1 / CNY 79.00

世界顶级程序设计高手的经验总结 【ACM-ICPC全球总冠军】巫泽俊主译 日本ACM-ICPC参赛者人手一册 本书对程序设计竞赛中的基础算法和经典问题进行了汇总,分为准备篇、初级篇、中级篇与高级篇4章。作者结合自己丰富的参赛经验,对严格筛选的110 多道各类试题进行了由浅入深、由易及难的细致讲解,并介绍了许多实用技巧。每章后附有习题,供读者练习,巩固所学。 本书适合程序设计......一起来看看 《挑战程序设计竞赛》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具