目次へ戻る 10) JasmineによるPromiseオブジェクトのテスト JavaScriptのテスト用フレームワークであるjasmineを使ったテストの例を紹介します。jasmineでは2.0で非同期処理のテストがサポートされました。 Asynchronous Support http://jasmine.github.io/2.0/introduction.ht...
続きを読む目次へ戻る 10) JasmineによるPromiseオブジェクトのテスト JavaScriptのテスト用フレームワークであるjasmineを使ったテストの例を紹介します。jasmineでは2.0で非同期処理のテストがサポートされました。 Asynchronous Support http://jasmine.github.io/2.0/introduction.ht...
続きを読む目次へ戻る 9) アンチパターン Promiseオブジェクトをだいぶ理解いただけたでしょうか。 次はついうっかり使ってしまいがちなアンチパターンを紹介します。 ここで紹介するものは以下のパターンを参考にした ES6 Promise版です。 Promise Anti-patterns http://taoofcode.net/promise-anti-patterns...
続きを読む目次へ戻る 8) 逐次処理 taskA() taskB() taskC()の順に処理を呼び出したい場合はどのように呼び出せば良いのでしょうか。 thenのメソッドチェインを使う then()のメソッドチェインを使うと、Promiseオブジェクトの結果を次のthen()に渡す事ができます。つまりPromiseオブジェクトが fulfilled になるのを待ってから次のPromis...
続きを読む目次へ戻る 7) 並列処理 all APIを複数コールして全てのレスポンスが返った後に処理を行うような場合は、then()を何度も呼ぶのではなくall()を使います。 指定時間が経過した後に fulfilled になるサンプルを例にします。 function task(value,ms) { return new Promise(function(resolve,rej...
続きを読む目次へ戻る 6) Static Method ここまでの例ではPromiseオブジェクトを作成する時に、コンストラクタ関数を使用していました。 var promise = new Promise(function(resolve,reject){ resolve(1); }); ES6 Promise には補助的な動作をするStatic Methodが存在します。 //...
続きを読む