Promise.withResolvers()
Promise.withResolvers() は新しい Promise とその resolve/reject 関数をオブジェクトで返します。コンストラクタのコールバック外から Promise を制御したい場合に便利です。
概要
Promise.withResolvers() は新しい Promise とその resolve/reject 関数をオブジェクトで返します。コンストラクタのコールバック外から Promise を制御したい場合に便利です。
対応ブラウザ
| 機能 | デスクトップ | モバイル | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| 119 | 119 | 121 | 17.4 | 119 | 17.4 | |
基本構文
JAVASCRIPT
const { promise, resolve, reject } = Promise.withResolvers();
// Resolve from an event handler
button.addEventListener('click', () => resolve('clicked'));
setTimeout(() => reject(new Error('timeout')), 5000);
const result = await promise; ライブデモ
traditional. side notation and. comparison
Promise constrakta. middle in resolve getoutbetween that abbreviate.
プレビュー全画面表示
実務での使いどころ
-
Promise.withResolvers() の活用
Promise と resolve/reject を同時に取得するメソッド。Promise の外部からの解決が容易に。
注意点
- 古いブラウザ(IE等)では対応していない。対象ブラウザを確認すること。
アクセシビリティ
- JavaScript による動的更新時は、aria-live リージョンで変更をスクリーンリーダーに通知する。
参考リンク
Powered by web-features