Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Node.js24.x】AbortController::AbortController()関数の使い方

AbortController関数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

AbortController関数は、非同期処理を途中で中止するためのメカニズムを提供する関数です。ウェブ標準APIとして定義されており、Node.jsではバージョン15.0.0以降で利用可能です。この機能は、長時間実行されるHTTPリクエストや、ユーザーの操作によってキャンセルされる可能性のある処理などを、不要になった時点で停止させることを目的としています。

具体的には、AbortController関数を呼び出して新しいAbortControllerオブジェクトを作成し、そのオブジェクトが持つsignalプロパティを中止したい非同期処理のAPI(例えば、fetch関数やsetTimeout関数、Node.jsの多くのストリームAPIなど)に渡して使用します。そして、処理を中止したいタイミングでAbortControllerオブジェクトのabort()メソッドを呼び出すと、signalを通じて非同期処理に中止のシグナルが送られます。このシグナルを受け取った非同期処理は、内部的に処理を中断し、エラー(通常はAbortError)を発生させたり、クリーンアップ処理を実行したりします。

これにより、不要なネットワーク通信やCPUリソースの消費を防ぎ、アプリケーションの応答性を向上させることができます。また、タイムアウト処理や、ユーザーが明示的に操作をキャンセルする機能の実装がより容易になります。AbortControllerは、複雑な非同期処理の制御において非常に重要なツールです。

構文(syntax)

const controller = new AbortController();

引数(parameters)

引数なし

引数はありません

戻り値(return)

AbortController

AbortControllerは、非同期操作をキャンセルするためのシグナルを生成するオブジェクトです。AbortControllerのインスタンスを生成すると、そのインスタンス自身が戻り値として返されます。

関連コンテンツ