blog

ES6 Essentials 13 - Promiseの他のメソッド

Promise1、Promise2、Promise3はすべて成功した後、成功をカウントします。...

Jun 15, 2020 · 2 min. read

1.Promise.resolveメソッドは既存のオブジェクトをプロミスオブジェクトに変換できます。

// 1. let p = Promise.resolve('foo'); // 2. let p = new Promise(resolve=>resolve('foo')); p.then((data)=>{ console.log(data); //foo })
  • と②は同じ意味です。

2.Promise.allメソッド:非同期オペレーションが完了してからオペレーションを実行します。

アプリケーションシナリオ

  • ゲームによっては素材が多く、ページを初期化する前にイメージ、フラッシュ、静的リソースファイルの読み込みが終わるのを待ちます。
let promise1 = new Promise((resolve, reject) => {resolve(1)}); let promise2 = new Promise((resolve, reject) => {resolve(2)}); let promise3 = new Promise((resolve, reject) => {resolve(3)}); let p4 = Promise.all([promise1, promise2, promise3]) p4.then((res)=>{ console.log(res);//[1, 2, 3] // 3つとも成功すれば成功である。 }).catch(err=>{ console.log(err); // どちらかが失敗すれば、失敗となる。 })
  • Promise1、Promise2、Promise3 のリクエストは、すべて成功してから成功したとみなされます。

3. Promise.raceメソッド:タイムアウトを設定し、タイムアウト後に対応するアクションを実行する非同期リクエスト。

//1 イメージリソースを要求する function requestImg(imgSrc) { return new Promise((resolve, reject) => { const img = new Image(); img.onload = function () { resolve(img); } img.src = imgSrc; }); } function timeout() { return new Promise((resolve, reject) => { setTimeout(() => { reject(new Error('イメージリクエストタイムアウト')); }, 3000); }) } Promise.race([requestImg('https://../?&;=&;=_&;=&;=&;=&;=%%%..%%%%%_.pg'),ut()]).(ta=>{ console.log(data); document.body.appendChild(data); }).catch(err=>{ console.log(err); });
  • タイムアウト時間を超えてもパケットデータが返されない場合、"image request timeout "と出力されます。
Read next

JSの工程管理で最も必要なのは論理的思考部分であり、プロジェクトとは無関係に書くことはできないが、それは問題のこの部分である可能性が高い!

という感じです。 言うことはあまりない、ハハ、乾物を開始、私はこれを読んだ後、プロセス制御この作品あなたは確かに問題ないと信じています!それでは、この章を読んで何を学ぶことができます参照してください。 フローチャートif判定スイッチforループwhileループdo whileループbr

Jun 11, 2020 · 15 min read

Seleniumの紹介

Jun 9, 2020 · 2 min read

22.ブラケット世代

Jun 6, 2020 · 1 min read