async/await

2019-04-15  本文已影响0人  风雪之隅_b6f7

async实际是对promise上的扩展,使用了promise并不和promise冲突

- then 将callback 拆分

        var w=waitHandle();

         w.then(...).then(...)

- async/await是最直接的同步写法解决异步问题,本质和then一样的效果

语法:

     1.函数前加async标识

     2.await后面必须跟promise实例(返回promise实例)

     3.需要npm install --save-dev babel-polyfill

function loadImg(src){

        var promise=new Promise(function(resolve,reject){

            var img=document.createElement('img');

            img.onload=function(){

                resolve(img)

            }

            img.onerror=function(){

                reject()

            }

            img.src=src

        })

        return promise

    }

    var src1='https://www.imooc.com/static/img/index/logo_new.png';

    var src2='https://www.imooc.com/static/img/index/logo.png';

    const load=async function(){

      const result1=await loadImg(src1);

      console.log(result1)

      const result2=await loadImg(src2);

      console.log(result2)

    }

    load();

上一篇 下一篇

猜你喜欢

热点阅读