queueMicrotask()
queueMicrotask() は Window インターフェイスのメソッドで、ブラウザーのイベントループへ制御が戻る前の安全なタイミングで実行されるマイクロタスクをキューに入れます。
マイクロタスク (microtask) とは、現在のタスクが完了し実行コンテキストの制御がブラウザーのイベントループへ戻る前、他に保留中のコードがなくなった時点で走る短い関数です。
これを利用すると他の(優先度が高いであろう)保留中のコードへ干渉することなく、ブラウザーが実行コンテキストの制御を取り戻す前に完了させたい処理を走らせることができます。マイクロタスクの使い方や使う理由についてはマイクロタスクのガイドで詳しく学ぶことができます。
マイクロタスクの重要性はタスクを非同期かつ指定の順序で実行することです。詳しくはJavaScript で queueMicrotask() によるマイクロタスクの使用をご覧ください。
マイクロタスクはライブラリーやフレームワークで必要なクリーンアップなど、描画直前のタスクに特に有用です。
対応ブラウザ
| 機能 | デスクトップ | モバイル | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| 71 | 79 | 69 | 12.1 | 71 | 12.2 | |
基本構文
JAVASCRIPT
queueMicrotask(() => {
// function contents here
}); 実務での使いどころ
-
queueMicrotask() の活用
queueMicrotask() は Window インターフェイスのメソッドで、ブラウザーのイベントループへ制御が戻る前の安全なタイミングで実行されるマイクロタスクをキューに入れます。
注意点
- 古いブラウザでは対応していない場合がある。
実装メモ
- 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。