teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コールバックを呼ぶ手はある

2018/09/17 23:45

投稿

maisumakun
maisumakun

スコア146674

answer CHANGED
@@ -1,3 +1,3 @@
1
1
  > setTimeoutはPromise内部でも非同期で実行されるからこういう動きになるのか・・・?と考えたんですが
2
2
 
3
- はい、`setTimeout`は`Promise`の枠組みで動くわけではないので、`setTimeout`に処理を託した時点で`Promise`の方は処理が終わります。そのあと`setTimeout`のコールバックが例外を投げようが何を返そうが、`Promise`とは無縁な世界です。
3
+ はい、`setTimeout`は`Promise`の枠組みで動くわけではないので、`setTimeout`に処理を託した時点で`Promise`の方は処理が終わります。そのあと`setTimeout`のコールバックが例外を投げようが何を返そうが、Promiseから与えられた`resolve`や`reject`を呼ばない限り、`Promise`とは無縁な世界です。