/ 2008-03-0401 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
JavaScript1.7 の yield を使って、非同期処理を同期処理のように書く方法 - IT戦記
を、コメント欄にあるURL
http://developer.mozilla.org/ja/docs/New_in_JavaScript_1.7#Generators
などを参考にしながら、なんとか理解した。
このソースの特殊なところは2箇所だと思った。
- yieldの引数としてr.sendを呼んでいるところ。本来引数である必要はない。yieldの前に呼べばおけ。Firefox2ではそれで正常に動いた。
- resumeが自分の関数の引数として定義されているところ。こうしないと、本体のyieldをRequestからsendするようなスコープで書けないっぽい。グローバルならいけるかもしれないけど。
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
最終更新時間: 2011-04-19 13:05