Promise ベースの操作の再試行パターン
Promise は、JavaScript で非同期操作を処理する便利な方法を提供します。ただし、場合によっては、操作を複数回、または特定の条件が満たされるまで再試行する必要がある場合があります。
1. Promise が解決するまで再試行
解決するまで操作を継続的に再試行するには、再試行間の遅延と最大再試行数を使用します。これは、for ループと .catch() チェーンを使用して実現できます:
<code class="js">for (var i = 0; i < maxRetries; i++) { p = p.catch(attempt).catch(rejectDelay); }</code>
2。条件を満たすまで再試行
結果で条件が満たされるまで操作を再試行するには、.then() チェーンを使用して条件をチェックし、.catch() チェーンを使用して失敗を処理します。
<code class="js">for (var i = 0; i < maxRetries; i++) { p = p.catch(attempt).then(test); }</code>
3.メモリ効率の高い動的再試行パターン
無制限の再試行と指定された遅延を持つ動的再試行メカニズムの場合は、.catch() チェーン アプローチを使用します。
<code class="js">var p = Promise.reject(); while (true) { p = p.catch(attempt).catch(rejectDelay); // Break out of the loop if the condition is met. if (conditionMet) break; }</code>
注:
以上がJavaScript での Promise ベースの操作のさまざまな再試行パターンとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。