理解Promise函數中的resolve和reject


看了promise的用法,一直不明白里面的resolve和reject的用法;

運行了這兩段代碼之后徹底理解了promise的用法;

var p = new Promise(function (resolve, reject) {
            var timer = setTimeout(function () {
                console.log('執行操作1');
                resolve('這是數據1');
            }, 1000);
        });
        p.then(function (data) {
            console.log(data);
            console.log('這是成功操作');
        });

  這里段代碼放在chrome瀏覽器里執行,出現的第一行是Promise{<pending>}

  然后再出現

   執行操作1
        這是數據1
        這是成功操作

  然后再次輸入p 按回車執行

   打印出來p是這樣

Promise{<resolved>}
然后點開看 可以看到控制台提示promiseStatus :resolved  說明promise的狀態已經成為了resolved

 

如果去掉異步里面的resolve函數調用, 則再次打印出來的狀態仍然是pending; 說明resolve函數是可以改變promise狀態的一個函數;

以上理解來自於博客:https://blog.csdn.net/weixin_41888813/article/details/82882375#commentBox 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM