02. Promise処理群のチェーン実行

Promise処理群の作成

 const task1 = () => {
   return new Promise((resolve, reject) => {
     // ここに処理1の処理を書く
     resolve("Task 1 is done.");
   });
 };
 
 const task2 = (message) => {
   return new Promise((resolve, reject) => {
     // ここに処理2の処理を書く
     resolve(message + " Task 2 is done.");
   });
 };
 
 const task3 = (message) => {
   return new Promise((resolve, reject) => {
     // ここに処理3の処理を書く
     resolve(message + " Task 3 is done.");
   });
 };

Promise処理群のチェーン実行(連結実行)

 task1().then((result) => {
     return task2(result);
 }).then((result) => {
     return task3(result);
 }).then((result) => {
     console.log(result + " Finished.");
 });

then()の返却値はPromiseオブジェクトでなくともよい

 task1().then((result) => {
     return task2(result);
 }).then((result) => {
     return task3(result);
 }).then((result) => {
     return result + " Task A is done.";
 }).then((result) => {
     console.log(result + " Finished.");
 });
  • ここではreturn result + " Task A is done.";はPromiseオブジェクトではないが、then()はPromiseオブジェクトに変換して次のthen()につなげる

参考

https://ja.javascript.info/promise-chaining


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2019-11-04 (月) 14:44:29