每次迭代打印出 forEach 中的数组值
Print out array value inside forEach with each iteration
我正在使用 jsZip 将多个文件保存到一个 zip 文件中并下载。我不知道如何从 urls 数组中输出该迭代的数组名称。
每个 urls 数组都是应该放在 var filename = "";
中的文件名,只是找不到打印每个数组名称的方法。
var zip = new JSZip();
var count = 0;
var urls = [
"FirstFile.pdf",
"SecondFile.pdf",
];
urls.forEach(function(url)
{
//if iteration #1, then echo firstFile.pdf below,
//if iteration #2 echo SecondFile.pdf below so it saves the files inside the zip.
var filename = "output urls array here as name";
JSZipUtils.getBinaryContent(url, function (err, data) {
if(err) {
throw err; // or handle the error
}
zip.file('./temp/' + filename, data, {binary:true});
count++;
if (count == urls.length)
{
zip.generateAsync({type:'blob'}).then(function(content)
{
$( ".download" ).click(function() {
saveAs(content, 'FileZip.zip');
});
});
}
});
});
urls.forEach(function(url)
{
//if iteration #1, then echo firstFile.pdf below,
//if iteration #2 echo SecondFile.pdf below so it saves the files inside the zip.
var filename = url;
});
文件名存储在传递给与 foreach
一起使用的匿名函数的 url
参数中。
因此,要在任何迭代中访问文件名,只需使用 url
var filename = url;
事实上,您并不真的需要第二个名为文件名的变量,您可以简单地修改后面的行,使其看起来像
zip.file('./temp/' + url, data, {binary:true});
我正在使用 jsZip 将多个文件保存到一个 zip 文件中并下载。我不知道如何从 urls 数组中输出该迭代的数组名称。
每个 urls 数组都是应该放在 var filename = "";
中的文件名,只是找不到打印每个数组名称的方法。
var zip = new JSZip();
var count = 0;
var urls = [
"FirstFile.pdf",
"SecondFile.pdf",
];
urls.forEach(function(url)
{
//if iteration #1, then echo firstFile.pdf below,
//if iteration #2 echo SecondFile.pdf below so it saves the files inside the zip.
var filename = "output urls array here as name";
JSZipUtils.getBinaryContent(url, function (err, data) {
if(err) {
throw err; // or handle the error
}
zip.file('./temp/' + filename, data, {binary:true});
count++;
if (count == urls.length)
{
zip.generateAsync({type:'blob'}).then(function(content)
{
$( ".download" ).click(function() {
saveAs(content, 'FileZip.zip');
});
});
}
});
});
urls.forEach(function(url)
{
//if iteration #1, then echo firstFile.pdf below,
//if iteration #2 echo SecondFile.pdf below so it saves the files inside the zip.
var filename = url;
});
文件名存储在传递给与 foreach
一起使用的匿名函数的 url
参数中。
因此,要在任何迭代中访问文件名,只需使用 url
var filename = url;
事实上,您并不真的需要第二个名为文件名的变量,您可以简单地修改后面的行,使其看起来像
zip.file('./temp/' + url, data, {binary:true});