Como retornar o texto de resposta AJAX? [duplicado]

Esta questão já tem uma resposta aqui:

Como faço para retornar a resposta de uma chamada assíncrona? 33 respostas

Eu uso o protótipo para fazer meu desenvolvimento AJAX, e eu uso o código assim:

somefunction: function(){
    var result = "";
    myAjax = new Ajax.Request(postUrl, {
        method: 'post',
        postBody: postData,
        contentType: 'application/x-www-form-urlencoded',
        onComplete: function(transport){
            if (200 == transport.status) {
                result = transport.responseText;
            }
        }
    });
    return result;
}

E eu acho que o "resultado" é uma string vazia. Então, eu tentei isso:

somefunction: function(){
    var result = "";
    myAjax = new Ajax.Request(postUrl, {
        method: 'post',
        postBody: postData,
        contentType: 'application/x-www-form-urlencoded',
        onComplete: function(transport){
            if (200 == transport.status) {
                result = transport.responseText;
                return result;
            }
        }
    });

}

Mas também não funcionou. Como posso obter o responseText para outro método para usar?

questionAnswers(2)

yourAnswerToTheQuestion