Я создал функцию загрузки, которая помещает загруженные данные в zip-файл (с jszip), который отлично работает. Но когда я пытаюсь добавить содержимое файлов, которые загружены в папку jszip, они просто пусты.
Распечатав массив, который я хочу добавить в консоль, я увидел, что по какой-то причине в массиве нет данных, когда он используется в цикле for.
var files = filesToRead;
var fragmente_name = [];
for (var i = 0, f; f = files[i]; i++) {
fragmente_name.push(f.name);
}
console.info(fragmente_inhalt);
for(var i = 0; i < fragmente_name.length; i++) {
console.info(fragmente_inhalt[i]);
if (element == "ambeth_script_upload") {
script_attachments.file(fragmente_name[i], fragmente_inhalt[i]);
} else if (element == "folder_upload") {
watcher_folder.file(fragmente_name[i], fragmente_inhalt[i]);
}
}

(var i = 0, f; f = files[i]; i++) 4 аргумента?
@Deda - No. 3. Соблюдайте оператор запятой между 0 и f. Это не точка с запятой.
@NikkoKhresna - Аргументов всего три. Выражение инициализации просто использует оператор запятой.
откуда взялся fragmente_inhalt?, вы не регистрируете содержимое fragmente_name
кроме того, откуда берется element при этом состоянии if?
но что делает f в var i = 0, f? он ничего не связывает с f. Тогда он может назначить undefined, когда fragmente_name.push(f.name);. Или есть какой-то синтаксис, о котором я никогда не слышал?
@arieljuod, вы можете считать fragmente_inhalt и element заданными, это не очень важно для вопроса, но они определены.
@NikkoKhresna fragmente_name работает отлично, просто fragmente_inhalt не работает. Я также никогда не слышал об этом синтаксисе, я нашел его в другом примере JZip, но он работает, поэтому я не буду его трогать ...: D (думая об этом, я думаю, он инициализирует переменную)



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


В документации указано, что
forимеет 3 аргумента,for ([initialization]; [condition]; [final-expression])