promise 鏈中出現錯誤時,會順著鏈接去到最近的錯誤處理函式。也可以說最簡單的處理方式就是在鏈接的尾端加上 catch,來抓所有錯誤,很類似一般的 try....
前幾天看到 stack overflow 上的這個問題,感覺哪天莫名迷惘可能也會有相同疑問,特別記錄一下。 第一段程式碼: const p1 = () =>...
寫了那麼多錯誤處理之後,開始有被害妄想覺得每段程式碼都會出錯,所以中場休息一下,來閒聊一本好看的書。 source: https://www.kobo.com/...
這是 MDN 上面的常見錯誤範例,當中包含幾個錯,算是前面幾篇的統整: /* 錯誤示範 */ doSomething() .then(function...
標題那串聽起來很恐怖,但其實並不是陌生的新問題。anti-pattern 是指常見但不太有效或有待優化的作法,而 promise constructor ant...
Promise.all 使用的情境是有多個 promise 想要同時並行,並等待它們全部的結果。 let promise = Promise.all(itera...
Promise.race 一樣是多個 promise 並行,但只會等待第一個 settled promise 的結果或錯誤。 以這個例子來說,第一個 promi...
寫了 promise 方法後,想到平常專案都很自然使用 Promise.all,突然好奇如果改成 Promise.allSettled 會發生什麼改變,畢竟後者...
promisification 是指將 callback-based 函式轉換成回傳 promise 的函式。先前文中曾嘗試把 loadScript 改成使用...
昨天的 promisify 函式預設傳入函式的 callback 一定是接收兩個參數 (error, result),但也有可能會有多個參數的情況:callba...