概念:

ES7 新增的 专门 配合 promise封装函数一起执行的程序

async: - 关键字 - 异步的

await: - 关键字 - 等待

作用:

让 异步程序 按照顺序 一个一个的执行

也是解决回调地狱的终极方法 (解决代码参考在最后)

注意:

  • async是写在函数定义前面的,function关键字前面 - 修饰函数
  • await是必须写在async修饰的函数里面,promise对象前面 - 等待promise(异步)的执行
  • 执行完promise之后,调用resolve,调用resolve的时候通常会传入数据,await就可以将数据接收到

说明:

promise语法 本质上 异步程序仍然是按照 前端来执行的

只是 promise语法 让 嵌套执行的函数程序通过 回调函数的语法形式 看上去 像 一个一个 按照顺序执行

async 和 await 是 通过 JavaScript定义的程序的执行机制让 多个 异步程序 按照顺序 一个一个执行

语法:

使用 async 作为 关键词 声明定义一个函数程序

使用 await 调用执行 promise封装的函数程序

promise封装的函数程序 执行结果返回值 是 异步请求 获取的响应体数据

解决回调地狱的参考

async function 函数(){// 变量1 存储 响应体结果 const 变量1 = await promise函数() ;// 变量2 存储 响应体结果 const 变量2 = await promise函数() ;// 变量3 存储 响应体结果 const 变量3 = await promise函数() ;
}

解决回调地狱终极方法 - ES7新增 - async 和 await相关推荐

  1. 什么是回调地狱?解决回调地狱的方法

    什么是回调地狱?(代码执行顺序的一种操作(解决异步)) 回调地狱的概念:回调函数里面嵌套回调函数. //地狱回调setTimeout(function () { //第一层console.log('1 ...

  2. 异步API中promise解决回调地狱问题和异步函数async终极解决方案

  3. 回调地狱以及解决回调地狱 - promise嵌套变链接 - 解决终极办法 - async 和 await

    回调函数? 当一个函数被当做参数传递时,这个函数就叫做回调函数-  callback 通常使用回调函数来处理异步代码 当异步代码执行结束后,需要执行的代码就要放在回调函数中 回调地狱? 当回调函数嵌套 ...

  4. 细谈回调地狱终极解决方案及ES7新语法async和await

    1.回调地狱的一般解决方案 正常情况下,我们都知道用promise去解决回调地狱.通过其调用then 和catch方法来实现回调函数多层嵌套问题.但是,我们可以实际来仔细看看用promise解决回调地 ...

  5. Promise链式调用和解决回调地狱的ES7终极解决方法async,await

    promise链式调用 **then 是成功回调,只要在then后边return一个promise就可以继续then**<script type="text/javascript&qu ...

  6. 链式调用和解决回调地狱的终极解决方法async,await

    promise链式调用 **then 是成功回调,只要在then后边return一个promise就可以继续then**<script type="text/javascript&qu ...

  7. ES6----promise方法解决回调地狱问题

    ES6–promise方法解决回调地狱问题 要解决回调地狱问题,首先要了解回调地狱的产生是由于早期的javascript只支持回调函数来表现异步操作完成,由于业务逻辑复杂时,就会出现一个串联多个异步操 ...

  8. 回调地狱,解决回调地狱,回调地狱的终极解决方案

    回调地狱示例 使用promise的链式调用解决回调地狱 async/await:回调地狱的终极解决方案

  9. 什么是回调地狱?如何解决回调地狱

    一.什么是回调地狱呢? 地狱这个词不陌生吧!对,没错就是那个十八层地狱的地狱,一层一层的地狱. 1.同步API,异步API的区别 这个问题呢,需要从Node.js的API说起,这里就会有人问了?博主你 ...

最新文章

  1. Windows进程与线程学习笔记(八)—— 线程切换与TSS/FS
  2. ARM 之十 ARMCC(Keil) map 文件(映射文件)详解
  3. vxworks gcc linux,针对VxWorks的GCC交叉编译器无法编译C++
  4. 记一次理想浪漫的毕旅
  5. 创建一个坚固的备份系统
  6. 嵌入式Linux之文件系统启动分析【原创】
  7. 触控屏c语言程序,TouchWin编程软件下载_TouchWin触摸屏软件下载 2.D.2c 官网版_当载软件站...
  8. CPU取指到发出控制、微程序控制原理详细过程
  9. linux 深入检测io详情的工具iopp
  10. 蓝桥2017真题剪邮票
  11. CAS(Compare and Swap)理解
  12. pythonGUI-wxpython
  13. aide制作软件教程_Aide教程
  14. windows 7 多国语言包官方下载资源共享(32/64位)
  15. ❤ ❤响应式小米官网源码!!!(js+css+html)❤ ❤
  16. 填坑---override、overload、overwrite
  17. SourceInsight4.0黑色背景主题
  18. IDEA(或Android Studio)推送(push)代码报错 unable to read askpass response from ‘C:\Users\Urasaki\AppData\Loc
  19. 碧蓝航线服务器维护2020,《碧蓝航线》2020维护公告(5月14日10时)
  20. 东北大学应用数理统计第三章知识点总结——假设检验

热门文章

  1. kindle如何关闭“10分钟无任何操作进入屏幕保护”, 也就是常亮
  2. 一个完整系统的测试过程
  3. 启英泰伦推出离在线语音方案,断网、联网都能实现语音交互
  4. Scala自学教程持续更新
  5. 手慢无,阿里云神作被《Spring Boot进阶原理实战》成功扒下,限时
  6. 如何打造个人技术影响力
  7. 新增新加坡元,万里汇Worldfirst收款币种增至8种!
  8. 5-佛教在中国的发展
  9. 四行代码,Python完成美图秀秀
  10. 算法时间复杂度的表示法O(n²)、O(n)、O(1)、O(nlogn)等是什么意思?