Как получить доступ к элементу FileReader вне метода reader.onload
У меня есть опция загрузки файла в моем HTML-файле
<input type="file" id="myFile1">
<input type="file" id="myFile2">
Я использую FileReader в Javascript и помещаю значения в массив. Здесь массив файлов имеет все значения файлов, прочитанных из файла ввода html.
var count = files.length;
var formValues= [];
var reader = new FileReader();
reader.onload = (function(myfile) {
return function(event) {
formValues.push(event.target.result);
}
})(file);
reader.readAsDataURL(file);
}
Здесь значения добавляются в массив formValues. Теперь мне нужно сделать несколько других модификаций этого массива и отправить его на контроллер.
Я перебираю formValues для доступа к значению файла, которое было установлено в reader.onload.
for (var i = 0; i < formValues.length; i++)
{
console.log (formValues[i]);
}
Если я пытаюсь получить доступ к этому значению, оно не идет внутри цикла, но если в браузере установлена точка останова, оно идет внутри цикла. Я знаю, чтобы использовать formValues, я должен использовать его внутри метода reader.onload. Поскольку formValues имеет значение file, почему я не могу получить доступ к значению, если перебираю этот массив? Мне нужно получить доступ к этому массиву снаружи, чтобы добавить еще несколько элементов в этот массив, кроме значения файла.