promise异步操作

2019-11-20  本文已影响0人  web周

promise异步操作

定义:包含异步操作结果的对象

状态:

进行中:pending
    在异步函数下方写pending时要执行的方法,在异步回调成功和失败内,改变pending执行方法的状态

已成功:resolved

已失败:rejected

声明方式:

new Promise((resolve, reject) => {})

resolve:将状态从未完成变为成功,在异步操作成功时调用,并将异步操作的结果作为参数传递出去
reject:将状态从未完成变为失败,在异步操作失败时调用,并将异步操作的错误作为参数传递出去

promise使用

promise.all 当请求都执行了之后,运行方法

promise.race 竞速哪个快,访问哪个

promise.then()

书写异步返回
2种写法

形式:promise.then(成功调用方法,失败调用方法)

    promise.then(function (value) {
        // success                                        
        console.log(value)
    }, function () {
        // failure
    })

形式::promise.then(成功调用方法).catch(失败调用方法)

    promise.then(function (value) {
        // success   
        console.log(value)
    }).catch(function (err) {
        /* 失败 */
        console.log('输出失败')
        console.log(err)
    })

Promse.race

赛跑的意思 比速

Promise.race([p1, p2, p3])里面哪个结果获得的快,就返回那个结果,不管结果本身是成功状态还是失败状态。

可以用于资源请求

上一篇下一篇

猜你喜欢

热点阅读