ホームページ  >  記事  >  ウェブフロントエンド  >  Promiseオブジェクトのthenメソッドの使い方

Promiseオブジェクトのthenメソッドの使い方

王林
王林オリジナル
2024-02-18 12:33:061191ブラウズ

Promiseオブジェクトのthenメソッドの使い方

Promise の then メソッドは、Promise オブジェクトの非同期操作を処理するために使用されます。 JS では、Promise は非同期操作を処理するためによく使用される方法であり、非同期操作を処理するためのより便利で明確な構文を提供します。

then メソッドの基本的な使い方は次のとおりです。

promise.then(onFulfilled, onRejected);

このうち、onFulfilled は Promise が成功したときのコールバック関数で、Promise オブジェクトのステータスが に変化したときに呼び出されます。 Fulfilled (completed); onRejected は、Promise オブジェクトのステータスが Rejected に変化したときに呼び出される、Promise が失敗したときのコールバック関数です。

具体的には、Promise オブジェクトの状態が Fulfilled の場合、onFulfilled 関数が呼び出され、Promise 内の値がパラメータとして渡されます。 Promise オブジェクトの状態が Rejected の場合、onRejected 関数が呼び出され、Promise 内のエラー情報がパラメータとして渡されます。

以下は、Promise の then メソッドの使用法を示す簡単なサンプル コードです。

function fetchData() {
  return new Promise((resolve, reject) => {
    // 模拟异步请求
    setTimeout(() => {
      const data = 'Hello World!';
      resolve(data); // 成功时调用resolve,传递数据
      // reject('Error occurred'); // 失败时调用reject,传递错误信息
    }, 1000);
  });
}

fetchData()
  .then((data) => {
    console.log('成功:', data);
  })
  .catch((error) => {
    console.error('失败:', error);
  });

上の例では、Promise オブジェクトを返す fetchData 関数を定義します。 Promise コンストラクターでは、非同期リクエストをシミュレートし、1 秒後にデータまたはエラーを返します。 Resolve または Reject を呼び出して、Promise の状態を変更します。

メイン プログラムでは、fetchData 関数を呼び出し、then メソッドを通じて成功した場合のコールバック関数と、catch メソッドを通じて失敗した場合のコールバック関数を登録します。 fetchData 関数の非同期操作が完了すると、返された結果に基づいて対応するコールバック関数が呼び出されます。

then メソッドは新しい Promise オブジェクトを返すことに注意してください。 then メソッドをチェーンで呼び出すことにより、複数の非同期操作を順番に処理できます。

つまり、Promise の then メソッドは、Promise オブジェクトの成功と失敗のステータスを処理するために使用されるコールバック関数です。これにより、非同期操作を処理する便利な方法が提供され、コードが読みやすくなります。

以上がPromiseオブジェクトのthenメソッドの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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