custom promise resolve All In One

custom promise resolve All In One

ok / err

custom promise resolve / reject

const promise = new Promise((ok, err) => {
    log(`resolve vs ok`);
    // resolve callback, ok
    ok(`✅`);
    // reject callback, err
    err(`❌`)
  });
promise.then(v => console.log(v))
// resolve vs ok
// Promise {<fulfilled>: '✅'}
// ✅

image

demos



console.log(1);

setTimeout(() => {
  console.log(2);
  Promise.resolve().then(() => console.log(3))
}, 100);

Promise.resolve().then(() => console.log(4))


// new Promise 裏面的 console.log 立即執行 ✅
new Promise((resolve, reject) => {
  console.log(`✅`);
  resolve(`✅`)
});

new Promise((resolve, reject) => {
  console.log(`❌`);
  reject(`❌`)
}).catch(err => {
  console.log(`error =`, err);
});


console.log(5);

setTimeout(() => {
  console.log(6);
  Promise.resolve().then(() => console.log(7))
  console.log(8);
}, 0);

console.log(9)

// 1
// 5
// 9
// 4
// 6
// 8
// 7
// 2
// 3

/* 

$ node ./app.js
1
✅
❌
5
9
4
error = ❌
6
8
7
2
3

*/

image

(🐞 反爬蟲測試!打擊盜版⚠️)如果你看到這個信息, 說明這是一篇剽竊的文章,請訪問 https://www.cnblogs.com/xgqfrms/ 查看原創文章!

refs

https://cdn.xgqfrms.xyz/promise/understanding-javascript-promises.pdf

https://www.cnblogs.com/xgqfrms/p/13983194.html



©xgqfrms 2012-2021

www.cnblogs.com/xgqfrms 發佈文章使用:只允許註冊用戶纔可以訪問!

原創文章,版權所有©️xgqfrms, 禁止轉載 🈲️,侵權必究⚠️!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章