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

回答編集履歴

1

テキスト修正

2019/11/04 14:15

投稿

jun68ykt
jun68ykt

スコア9058

answer CHANGED
@@ -18,4 +18,12 @@
18
18
  ```
19
19
  が、ソースコードの中で一番下の行に書いてあるからといって、時間的に最後に実行されるわけではない、ということです。
20
20
 
21
- 参考になれば幸いです。
21
+ 参考になれば幸いです。
22
+
23
+ ### 追記
24
+
25
+ ご理解の参考になるとよいのですが、擬似的なAPIのつもりの`fetchDummy` という関数を自作して、レスポンスを返すまで時間を、東京都の場合は5秒、広島県の場合は2秒待たせるようにして、これで、ご質問に挙げられているコードの `fetch` を置き換えたものが以下です。console.log で出力する情報も追加しています。
26
+
27
+ - [https://codepen.io/jun68ykt/pen/QWWQvmm?editors=0012](https://codepen.io/jun68ykt/pen/QWWQvmm?editors=0012)
28
+
29
+ このサンプルでは、APIにリクエストを送ってから、レスポンスが返ってくるまでには一般に時間がかかることを模しており、それを待たずに`#2` のログが出力されること、および、forループの順序で、先にリクエストが送られるのは東京都のほうであっても、`cities` には、先にレスポンスが返ってくる広島県の items が、先に追加されていることが分かると思います。