JavaScript コールバック: 非同期かどうか?
JavaScript コールバックは一般的に非同期ではありません。 addOne 関数や simpleMap 関数で指定した例など、特定のシナリオでは、コードは同期的に動作します。
ブラウザ内の非同期 JavaScript
コールバックベースの AJAX 関数jQuery では、XHR (XMLHttpRequest) リクエストが関与するため、非同期であることがよくあります。デフォルトでは、ブラウザーの XHR リクエストは非同期であり、リクエストの処理中に継続的なスクリプトの実行が可能です。
Node.js の非同期 JavaScript
Node.js では、非同期動作は通常、ファイル I/O、process.nextTick、setTimeout などの入出力 (I/O) 操作から発生します。 setInterval。 MongoDB/Mongoose を使用したコールバックベースのデータベース呼び出しは、データベースとの対話に関係する基礎的な I/O 操作により非同期になります。
あらかじめ決められた非同期状況
非同期が発生することがよくあります。環境に根付いています。ブラウザでは、XHR リクエストに関連付けられたコールバック関数は本質的に非同期です。 Node.js では、I/O 操作にリンクされたコールバックも同様に非同期です。
カスタム非同期関数
特定の環境関数のみに依存せずに、非同期動作を実現できます。 ES6 の約束を活用することで。 Promise は、非同期操作を定義するための言語レベルのメカニズムを提供します。 Promise にアタッチされたコールバック関数 (then および catch 経由) は常に非同期で実行され、Promise に続くコードがブロックされないようにします。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3