HTML5 FileReader wie man Ergebnis zurückgibt?

Ich benutze JS FileReader. Ich möchte nach dem Lesen der Datei ein Ergebnis erhalten und mit diesen Daten arbeiten. FileReader ist asynchron und ich weiß nicht, wann das Ergebnis fertig ist. Wie man es richtig macht?

$(document).ready(function(){
    $('#file_input').on('change', function(e){
        var res = readFile(this.files[0]);

        //my some manipulate with res

        $('#output_field').text(res);
    });
});

function readFile(file){
    var reader = new FileReader(),
        result = 'empty';

    reader.onload = function(e)
    {
        result = e.target.result;
    };

    reader.readAsText(file);

    //waiting until result is empty?

    return result;
}

http://jsfiddle.net/ub22m/4/

Es ist die Show "leer".

Wie warte ich, bis "result" leer ist? Ein anderer Weg?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage