jsdeferredのloop()とwait()

jsdeferred.jsを利用すると、待機処理を伴うループを簡潔に記述できる。

Deferred.loop(10, function(i){
  return $.getJSON("./boke/random").next(function(data){
	//... dom操作(1)

    return Deferred.wait(1);
  })
  .next(function(){
    // ...DOM操作(2)
    return Deferred.wait(3);
  });
});

上記コードにより、json取得 →DOM操作(1)→1秒待機→DOM操作(2)→3秒待機というループを10回繰り返す。

@nakajimanさん作のopensocial-jqueryにもjsdeferredは組み込まれていますが、残念ながらloop()は非対応とのことです。
http://twitter.com/nakajiman/status/19296191932
Index - opensocial-jquery - API Index - Project Hosting on Google Code