技術メモ

神奈川在住のITエンジニアの備忘録。おもにプログラミングやネットワーク技術について、学んだことを自分の中で整理するためにゆるゆると書いています。ちゃんと検証できていない部分もあるのでご参考程度となりますが、誰かのお役に立てれば幸いです。

Javascriptのpromiseパターン

JavaScript の promise パターンについて簡単に書く。promise パターンについては、以下のページに詳しく書かれている。

https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Using_promises

https://blogs.msdn.microsoft.com/ie_jp/2011/10/04/promise-javascript/

 

このパターンを使うと、Javascriptで非同期処理を書くときにコードがシンプルになる。仕組みをざっくり説明すると、非同期処理を行う関数を発行した際、その関数から受け取った戻り値(promise)に対して、任意のタイミングで then(成功時のコールバック関数, 失敗時のコールバック関数) 関数を実行し、その時点で非同期処理が終わっていればコールバック関数が実行され、終わっていなければそこでwaitするというもの。

 

非同期処理発行時の戻り値をあとでチェックするという方式は、JavaのFutureパターンに似ているなあ、と思った。

https://docs.oracle.com/javase/jp/8/docs/api/java/util/concurrent/Future.html

以下は、参考として、以前JavaのFutureパターンを使って書いたサンプルプログラム。

https://akrad.hatenablog.com/entry/2018/04/25/220836