promise async await

常用对象方法  then catch

类方法 all race

// 将异步方法包装成返回promise类型的方法
function getImage(src) {
    const pro = new Promise((resolve, reject) => {
        const img = new Image();
        img.onload = function () {
            // ...此处一大段处理逻辑,可能还嵌套更多回调
            //用了resolve之后,上面大段逻辑可放到then函数中直行,
            //(对于嵌套回调函数,还可以链式调用then来书写) 优美          
            resolve(img);
        }
    })
    return pro;
}

getImage(src).then((data) => {
    //大段逻辑
}).catch((err) => {
    //
})

promiseLike ???

async声明一个异步方法(AsyncFunction)。

await会造成阻塞,只能用在async方法中。

await等待一个值,如果是一个promise,那么await会等待resolve的值后继续执行。

原文地址:https://www.cnblogs.com/miaolq/p/6422253.html