回答編集履歴
1
注意点追加
answer
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
解決策としては async/await を使って非同期処理を止める、またはループ処理を別な関数にする手があります。別な関数にすれば、変数の空間が分かれるので、上書きを防止できます。
|
14
14
|
|
15
|
-
例えばこんな感じです(ちゃんと動くかは実行していないので保証できません)。
|
15
|
+
例えばこんな感じです(ちゃんと動くかは実行していないので保証できません)。ただし、この方法では並び順(ダウンロード完了順)は保証できません。
|
16
16
|
|
17
17
|
```js
|
18
18
|
function select(category) {
|
@@ -129,4 +129,6 @@
|
|
129
129
|
console.log(error);
|
130
130
|
}
|
131
131
|
}
|
132
|
-
```
|
132
|
+
```
|
133
|
+
|
134
|
+
async/awaitはforループ中のダウンロード完了を待ってしまうので、非同期処理で次々とダウンロードが行われるのに比べると時間がかかってしまいます。ただし並び順は保証できます。
|