P粉6974089212023-08-21 10:27:16
ES2018 を使用すると、上記のすべての答えを大幅に簡素化できます:
リーリー仕様の表示:提案非同期反復
簡略化:
リーリー2018-09-10: この回答は最近多くの注目を集めています。非同期反復の詳細については、Axel Rauschmayer のブログ投稿 を参照してください。
P粉0943518782023-08-21 09:14:18
もちろん、コードは機能しますが、期待どおりに機能しないことは確かです。複数の非同期呼び出しをトリガーするだけですが、printFiles
関数はその直後に戻ります。
ファイルを順番に読みたい場合、実際には forEach
は使用できません。代わりに、最新の for … of
ループを使用できます。await
は期待どおりに機能します。
リーリー
forEach は使用できません。 async
コールバック関数呼び出しはそれぞれ Promise を返しますが、それを待つのではなく破棄します。代わりに、
map を使用し、
Promise.all:
を使用して結果の Promise の配列を待つことができます。
リーリー