Quero que quando terminar de executar o $arquivos.addEventListener("change", execute automaticamente a function showResults()..esse FileReader funciona de modo assíncrono, e eu preciso que ele tenha terminado todo o processo pra dai fazer a validação que eu preciso.
Fiz um botão pra chamar o showResults(), mas gostaria que ele fosse automatico no callback.
Segue meu código abaixo:
var $arquivos = document.getElementById("arquivos");
var results = [];
$arquivos.addEventListener("change", function(){
var files = event.target.files;
results = [];
for(var i=0; i < files.length; i++) {
var file = files[i];
var reader = new FileReader();
reader.onload = (function(f) {
return function(e) {
results.push(e.target.result);
}
})(file);
reader.readAsText(file);
}
});
function showResults() {
if (results[0] === results[1]) {
alert("Same files!")
} else {
alert("Different files!")
}
}