⊗jsSpPrmSta 166 of 294 menu

JavaScriptにおけるPromiseの状態

Promiseは3つの状態のいずれかにあります。 作成時、Promiseは保留中 (pending) であり、その後、取得した結果を返して履行済み (fulfilled) になるか、または拒否理由を返して拒否済み (rejected) になります。以下のコードを実行することで、 ある状態から別の状態への遷移を確認できます:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; // true または false を設定してください if (!isError) { resolve([1, 2, 3, 4, 5]); } else { reject('promise内のエラー'); } }, 3000); }); setInterval(function() { console.log(promise); // 毎秒Promiseをコンソールに出力 }, 1000);

fulfilledrejected の状態は不変であることに注意してください: Promiseがいずれかの状態に遷移すると、もう別の状態には遷移できません。 例を見てみましょう。以下のコードでは、reject の呼び出しが先に行われるため、 resolve の呼び出しは無視されます:

let promise = new Promise(function(resolve, reject) { setTimeout(() => reject(new Error('エラー')), 1000); setTimeout(() => resolve('無視されます'), 2000); });

しばらくして成功するPromiseを作成してください。 それをコンソールに出力し、初期状態と完了後の状態を確認してください。

しばらくして失敗するPromiseを作成してください。 それをコンソールに出力し、初期状態と完了後の状態を確認してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否