JavaScript における deferred、promise、future の違い
JavaScript では、非同期操作を処理するために deferred、promise、future がよく使用されます。 。これらの概念にはそれぞれ独自の一連の特性があります。
Deferreds
正式な文書では明確に定義されていません。遅延は通常、Promise 解決のアービターとして使用され、実装されます。解決関数と拒否関数の両方。また、プロミスとして実装して、 then 関数を使用できるようにすることもできます。
Promises
Promises は、このコンテキストにおいて最も包括的な概念を表します。これらは非同期操作の結果をカプセル化し、別のターゲット関数を受け入れる then 関数を公開します。 Promises/A 仕様は、Promises/A 仕様のあいまいさを解決し、Promise がどのように動作するかに関する基準を設定します。
Futures
現在の議論ではあまり使用されていない用語、フューチャーは、then 機能を提供せずに同期性とエラー処理を抽象化するプロキシ オブジェクトを指します。たとえば、FutureJS では、このような目的でこの用語を一般的に使用しています。
主な違い
要約すると、これらの用語は同じ意味で使用されることもありますが、それぞれに異なる特徴があります。 Deferred は Promise 解決の背後にある原動力であり、Promise は非同期操作の全体的な戦略を表し、Future は同期性を抽象化するためのあまり一般的ではない用語です。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3