人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

jQueryのDeferredのthenについて、理解できないコードがあります。
下記のような、一連の処理をしているコードを職場で見かけたのですが
処理1?3は全て同期な処理で、Deferredを使っている意味がさっぱりわかりません。
何を意図しているのかわかりますか?

var dfd = $.Deferred();

dfd.then(function(){
// 処理1
}).then(function(){
// 処理2
}).then(function(){
// 処理3
});

dfd.resolve();



●質問者: office55
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :キャンセル
└ 回答数 : 2/2件

▽最新の回答へ

1 ● oil999

非同期処理が終わったら、逐次的に「処理1→処理2→処理3」の順に同期処理を走らせるコードです。
非同期処理の終了処理(成功/失敗メッセージの表示など)に利用されることが多いパターンです。


oil999さんのコメント
全部同期処理ではありません。 「非同期処理が終わったら」と回答しています。

office55さんのコメント
すいません。まだ理解しきってないのですが、処理1〜3は、同期処理で 何もせずすぐにresolveしてるのです。作成者の意図がわかりませんでした。

2 ● taroe

jQuery.Deferredって何
http://hamalog.tumblr.com/post/5159447047/jquery-deferred

ここの説明が、わかりよいと思います。


質問者から

すいません。質問の仕方がまずかったのか 自分の理解が足りていないかなのですが、
全部同期の処理なのであれば、Deferredを使う意味が無いと思うのです。
それをあえて、Deferredを使っているからには 何か意図があるかと思ったのですが どうでしょう?


関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ