91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ES6的Promise -- 邏輯執行的順序

發布時間:2020-07-10 17:30:12 來源:網絡 閱讀:1056 作者:sendoffice 欄目:web開發

基本認識

Promise的核心價值是創建一個異步執行的過程,并給你善后的機會。

Promise對象一但創建就會立即執行,執行過程是異步的,不會對后續的邏輯造成阻塞。

直接聲明,立即執行

        let promise = new Promise ( (resolve, reject) => {
                //執行耗時的邏輯。。。
                if ( success ) {
                        resolve(a)   // pending ——> resolved 參數將傳遞給對應的回調方法
                } else {
                        reject(err)  // pending ——> rejectd
                }
        } )
        //后續代碼會繼續執行,而不是等待Promise內部邏輯執行完畢。
        //...

放到函數里,需要時執行

function promise () {
            return new Promise ( function (resolve, reject) {
                    //執行耗時的邏輯。。。
                    if ( success ) {
                            resolve(a)
                    } else {
                            reject(err)
                    }
            } )
    }

Promise內邏輯執行完畢后,調用resolve還是reject,完全要看編程者的意圖。調用resolve就會觸發Promise的then,調用reject就會觸發Promise的catch。
這就是設計的價值之處,執行完畢一個耗時操作后,給你一個條件回調的機會用于執行后續邏輯。

    promise.then(
            () => { console.log('this is success callback') }
    ).catch(
            (err) => { console.log(err) }
    )

更多

then() 和 catch() 都會返回一個新的Promise對象,可以鏈式調用。

    promise.then(
            () => { console.log('this is success callback') }
    ).catch(
            (err) => { console.log(err) }
    ).then(
            ...
    ).catch(
            ...
    )
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宣恩县| 合川市| 肃北| 泌阳县| 河源市| 塘沽区| 方正县| 柳林县| 衢州市| 江华| 攀枝花市| 贵港市| 星子县| 运城市| 渭源县| 海宁市| 丹棱县| 房山区| 册亨县| 嘉义市| 乌兰察布市| 息烽县| 乌鲁木齐市| 抚州市| 神农架林区| 兴仁县| 自治县| 天津市| 墨竹工卡县| 吴桥县| 五家渠市| 恭城| 泾川县| 武汉市| 汤阴县| 济南市| 吐鲁番市| 射洪县| 大庆市| 盐池县| 田阳县|