I have a function that calls some service and returns the response. If the response is FALSE, it waits 1 second to ask the service again (which then probably returns TRUE).<
You should use a callback function when you expect a result from the service.
Like this :
function checkService(callback) {
//this may return TRUE or FALSE
var RET = someServiceResponse();
// here waits 1 second, then ask the service again
if( RET == true ) {
callback(RET);
} else {
setTimeout(
function() {
//it must return the second response of the service
RET = someServiceResponse();
callback(RET);
},
1000
);
// I want the checkService() return the response after de timeout
return RET;
}
}
So when you want to call the service, you just need to do :
checkService(function(status){
alert(status);
// Here some code after the webservice response
});