var defer = jQuery.Deferred(); defer.done(function(a,b){ console.log("a = " + a+"b = " + b); return a * b; }) .done(function( result ) { console.log("result = " + result); }) .then(function( a, b ) { console.log("a = " + a+"b = " + b); return a * b; }) .done(function( result ) { console.log("result = " + result); }) .then(function( a, b ) { console.log("a = " + a+"b = " + b); return a * b; }) .done(function( result ) { console.log("result = " + result); }); defer.resolve( 2, 3 );