はじめに 何となくDeferredを知っているがちゃんと使ったことのない人向けの記事です。 本文中の p はPromiseオブジェクトを指します。(追記:Deferredオブジェクトを使うこともありますが、普通はPromiseに対して .then() や .done() をぶら下げます。) いきなり具体例 1 が出力された1秒後に 2 と done! が同時に出力される。 function test_deferred() { var p = new $.Deferred().resolve().promise(); p = p .then(function() { var d = new $.Deferred(); setTimeout(function() { console.log(1); d.resolve(); }, 1000); return d.promise(); }); p