Synchronus Function
by HYEONGJINKIM
JavaScript
function a() {
var deferred = $.Deferred();
setTimeout(function () {
console.log("status in a:", deferred.state());
//this should trigger calling a or not?
deferred.resolve("from a");
}, 500);
console.log("a");
return deferred.promise();
};
function b() {
var deferred = $.Deferred();
setTimeout(function () {
console.log("status in b:", deferred.state());
deferred.resolve("from b");
}, 200);
console.log("b");
return deferred.promise();
}
//synchronous function
function c() {
var deferred = $.Deferred();
console.log("c");
console.log("status in c:", deferred.state());
deferred.resolve("from c");
return deferred.promise();
}
function test() {
var d = jQuery.Deferred(),
p = d.promise();
//instead of the loop doing the following has the same output
p.then(a).then(b).then(c);
d.resolve();
}
test();