ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript コールバックは常に非同期ですか?

JavaScript コールバックは常に非同期ですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-20 11:14:30990ブラウズ

Are JavaScript Callbacks Always Asynchronous?

すべての JavaScript コールバックは非同期ですか?

一般に信じられていることに反して、すべての JavaScript コールバックが非同期であるわけではありません。たとえば、Array#sort と String#replace で使用されるコールバックは同期的に実行されます。

非同期コールバック

非同期コールバックは、後で実行されるコールバックであり、他のコードを許可します。同時に実行します。通常、非同期コールバックには外部リソース リクエスト (jQuery AJAX 呼び出しなど) が含まれます。

jQuery AJAX 呼び出し

jQuery AJAX 関数は、 「非同期」フラグの設定。ただし、ブラウザは通常、XMLHttpRequest オブジェクト (jQuery AJAX で使用) の非同期操作をデフォルトに設定します。

Node.js の非同期

Node.js では、非同期性は次の方法で導入されます。ファイル I/O、process.nextTick、setTimeout、setInterval などの特定の関数。これらの関数以外の非同期操作はサポートされていません。

非同期関数の作成

ECMAScript 6 より前では、JavaScript の非同期関数はホストが提供する関数 (例: nextTick

ECMAScript 6 Promises

ECMAScript 6 では、非同期プログラミングの言語レベルの概念として Promise が導入されました。 Promise にアタッチされたコールバック (then または catch 経由) は、アタッチされた時点で Promise がすでに解決されている場合でも、常に非同期で呼び出されます。

したがって、非同期コールバックを確実に実行する最善の方法は、直接ではなく Promise を使用することです。コールバック。

以上がJavaScript コールバックは常に非同期ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。