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

    在编写网页的时候我们常常会遇到异步问题,async+await是es6提出的解决异步的方法,下面我们来看看这个方法怎么实现解决异步的,

    大家都知道,setTimeout是一个定时器。他是一个异步执行的语句。如:

    function foo(){
        setTimeout(()=>{
        console.log(1)
    },1000)
    console.log(2)
    }    

    答案肯定是2,1

    因为setTimeout是一个异步执行语句,所以下面一个会先执行完后再执行异步。

    可是,我们有时候会想让异步先执行完了再执行下面的语句,该怎么办呢?

    这就是我们今天讨论的话题了,如何解决异步问题。

    在网上有很多解决异步的问题,今天我要说的是通过es6提出的async+await解决异步问题。

    代码如下:

    async function foo(){
    
    await new promise((resolve,reject)=>{
        setTimeout(()=>{
        console.log(1)
        resolve();
    },1000)
    })
    console.log(2)
    }    

    这样,就可以很好的解决异步问题了,当然这个async+await也是基于promise的。

  • 相关阅读:
    boost::ptree;boost::xml_parser
    boost::array
    boost::timer
    boost::gregorian日期
    boost::algorithm/string.hpp
    boost::lexical_cast
    QT::绘图
    QT::透明
    centos上freefilesync与定时任务
    centos上安装freefilesync工具配置说明
  • 原文地址:https://www.cnblogs.com/xiaojianwei/p/10126895.html
Copyright © 2011-2022 走看看