zoukankan      html  css  js  c++  java
  • async await 异步处理

    一个异步函数的声明:

    // async表示函数里有异步操作,await表示紧跟在后面的表达式需要等待结果。

    async 函数名 function(){

      await 异步操作;// 可使用多个await执行多个异步操作

      异步操作执行完后的操作;

    } // 返回一个 Promise 对象,可以使用then方法添加回调函数

    注意点:

    1、async函数返回的 Promise 对象,必须等到内部所有await命令后面的 Promise 对象执行完,才会发生状态改变,除非遇到return语句或者抛出错误。

       也就是说,只有async函数内部的异步操作执行完,才会执行then方法指定的回调函数。

    2、await命令后面的 Promise 对象如果变为reject状态,则reject的参数会被catch方法的回调函数接收到。如果await后面的异步操作出错,那么等同于async函数返回的 Promise 对象被reject

    3、只要一个await语句后面的 Promise 变为reject,那么整个async函数都会中断执行。如果想要某个异步操作不影响后续异步操作,则把该异步操作放在try...catch当中。

       await命令后面的Promise对象,运行结果可能是rejected,所以最好把await命令放在try...catch代码块中。

     

    此处是一个练手的题

  • 相关阅读:
    ajax 新闻栏目
    ajax 瀑布流实现
    html5 canvas图片渐变
    html5 canvas图片翻转
    html5 canvas图片反色
    ajax 第一个程序
    ajax 新闻栏目
    HDU 1756 Cupid's Arrow( 判断点在多边形的内外 )
    POJ 2356 Find a multiple( 鸽巢定理简单题 )
    HDU 5762 Teacher Bo ( 暴力 )
  • 原文地址:https://www.cnblogs.com/cheeseCatMiao/p/9915232.html
Copyright © 2011-2022 走看看