✨配列のPromiseを直列で実行する方法2021/05/04に公開1件JavaScriptpromisetechDiscussionstandard software2021/05/04に更新次のように書いても、 300ms waited. 100ms waited. 200ms waited. 500ms waited. 400ms waited. の順番で動作しました。 いろんな書き方ができるみたいです。 (async () => { await (async () => { for (const waitTime of waitTimes) { await wait(waitTime); } })(); await (() => { let i = 0; const runThen = (p) => { if (waitTimes.length <= i) { return; } i += 1; p.then(() => runThen(wait(waitTimes[i]))); } runThen(wait(waitTimes[0])); })(); })(); 返信を追加
standard software2021/05/04に更新次のように書いても、 300ms waited. 100ms waited. 200ms waited. 500ms waited. 400ms waited. の順番で動作しました。 いろんな書き方ができるみたいです。 (async () => { await (async () => { for (const waitTime of waitTimes) { await wait(waitTime); } })(); await (() => { let i = 0; const runThen = (p) => { if (waitTimes.length <= i) { return; } i += 1; p.then(() => runThen(wait(waitTimes[i]))); } runThen(wait(waitTimes[0])); })(); })(); 返信を追加
Discussion
次のように書いても、
300ms waited.
100ms waited.
200ms waited.
500ms waited.
400ms waited.
の順番で動作しました。
いろんな書き方ができるみたいです。