Retornar do fechamento?
Como se retorna de um fechamento, sem retornar da função que o contém?
Na função a seguir, oreturn
declaração realmente retorna deGM_xmlhttpRequest
: não o fechamento. Naturalmente, vejo que poderia organizar meu código para que a execução caia no final do fechamento, mas estou curioso para saber como retornar antecipadamente no exemplo.
function GM_xmlhttpRequest(details, callback) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState != 4)
return; // <-- zomg returns from parent function wtf
if (xhr.status != 200)
callback(null);
callback(xhr);
}
xhr.open('GET', details.url, true);
xhr.send();
};