【JS基礎(chǔ)】如何理解Promise

最 新:https://www.zybuluo.com/c-Ku/note/898573

作者:浪子
鏈接:https://zhuanlan.zhihu.com/p/29632791
來源:知乎

// 定外賣就是一個Promise,Promist的意思就是承諾
// 我們定完外賣,飯不會立即到我們手中
// 這時候我們和商家就要達成一個承諾
// 在未來,不管飯是做好了還是燒糊了,都會給我們一個答復(fù)
function 定外賣(){
    // Promise 接受兩個參數(shù)
    // resolve: 異步事件成功時調(diào)用(菜燒好了)
    // reject: 異步事件失敗時調(diào)用(菜燒糊了)
    return new Promise((resolve, reject) => {
        let result = 做飯()
    // 下面商家給出承諾,不管燒沒燒好,都會告訴你
    if (result == '菜燒好了') 
        // 商家給出了反饋
        resolve('我們的外賣正在給您派送了')
    else 
        reject('不好意思,我們菜燒糊了,您再等一會')
    })
}

// 商家廚房做飯,模擬概率事件
function 做飯() {
    return Math.random() > 0.5 ? '菜燒好了' : '菜燒糊了'
}

// 你在家上餓了么定外賣
// 有一半的概率會把你的飯燒糊了
// 好在有承諾,他還是會告訴你
定外賣()
    // 菜燒好執(zhí)行,返回'我們的外賣正在給您派送了'
    .then(res => console.log(res))
    // 菜燒糊了執(zhí)行,返回'不好意思,我們菜燒糊了,您再等一會'
    .catch(res => console.log(res))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容