promise

    const p1=new promise((resolve,reject)=>{
        resolve("错误")
    }) 
    const p2=new promise((resolve,reject)=>{
        resolve("错误")
    }) 
    const p3=new promise((resolve,reject)=>{
        resolve("错误")
    }) 
    返回如果有成功的,返回第一个成功的promise,如果没有就返回失败的promise
        Promise.race([p1,p2,p3]).then((values)=>{
            console.log(values)
        })
    返回第一个成功的promise,如果没有成功promise就返回一个错误
        Promise.race([p1,p2,p3]).then((values)=>{
            console.log(values)
        })
    只要有失败的promise就返回第一个失败的promise
        Promise.all([p1,p2,p3]).then((values)=>{
            console.log(values)
        })
    不论成功失败返回promise的状态
        Promise.allsettled([p1,p2,p3]).then((values)=>{
            console.log(values)
        })
    promise支持链式调用
    const p1=new promise((resolve,reject)=>{
        setTimeout(()=>{
            try{
                resolve("成功")
            }catch(err){
                reject("失败")
            }
        },10000)
    })
    p1.then((resolve,reject)=>{
        console.log("成功")
    }).catch(()=>{
        console.log("失败")
    }).finally(()=>{
        console.log("风雨无阻都执行")
    })

    p1.then((value)=>{
        console.log("1111")
    },(err)=>{
        console.log("2222")
    })
    console.log(p1);

  

posted @ 2021-12-18 10:00  肥瘦皆宜  阅读(26)  评论(0编辑  收藏  举报