整理一些 Promise 相關的觀念與問題。文內節錄自 promise 問題集

重點整理

  • 瀏覽器的 window 有一個 Promise,可以直接使用 .resolve .reject .race .all
  • 一般建立 Promise 需要用 new 並且需要指定 resolve 否則會報錯。
  • Promise.then 只有在 resolve 被執行後才會執行(.catch 同理)。
  • .finallyresolvereject 執行後會跟著執行,換句話說沒有執行 resolverejectfinally 也不會執行。
  • .then.catch 都會返回一個新的 Promise。所以.then.catch 返回的值不能是 Promise 本身,否則會造成死循環。
  • .then 可以傳入兩個 function,第二個 function 可以視為是 .catch 的簡寫。但如果傳入非 function 會發生透傳。(question3-5)
  • .finally 不接受任何的參數,也就是在 .finally 中是無法知道P romise 最終的狀態是 resolved 還是 rejected。

閱讀更多

前言

我其實不太常刷題,這陣子因為面試開始練手感,後來想想只是解題好像有點可惜,應該紀錄一下自己解題的思維,留一個機會讓未來我可以檢視自己有沒有進步;一方面開始練習寫文章,撰文真的好難。

前一陣子摸了基礎的 counter、pointer 用法之後,以為自己面對一些基礎的 algorithm 應該要秒解才對,結果還是花了比預期還要長的時間。我認為就是還不夠熟練,大部分演算法也不是一個公式就可以帶入得到解答,瞭解特定演算法的思維再判斷不同的情境才能順利解題。

閱讀更多

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×