наверно так
пример на then:
принимает функцию как аргумент
function( /* fnDone, fnFail, fnProgress */ ) {
var fns = arguments;
перебор
var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];
выполняет
var returned = fn && fn.apply( this, arguments );
тебе зачем вникать в это? иди борщ вари