, , . :

function doSomething (progressFn [,  ]) {
 //  
 (function () {
 //  ...
 if (  ) {
 //     
 progressFn(, );
 //   
 setTimeout(arguments.callee, 0);
 }
  })();
}