糞仕様言語でも意外と何とかなるものですね。
これまでJSDeferredでcallback地獄を回避していたのですが、エラーハンドリングをミスると例外が飲み込まれてしまうのとcancelまわりがややトリッキーな感じがしていたので、今度からこれ使おうかと思います。
追記
これBlockがあると破綻しますね。マクロもCPSも難しい。
|
async: { var x = await(yield_, setTimeout(function() { yield_(123); }, 1000)); console.log(x); if (x != 0) { var y = await(yield_, setTimeout(function() { yield_(x+x); }, 2000)); console.log(y); } } |
関連文書:
最近のコメント