【发布时间】:2017-11-22 03:02:23
【问题描述】:
目前,我的代码异步加载所有图像。这也意味着在我当前的实现中,图像在完全下载后被添加到 fileArray 中。由于并非所有图像的大小都相同,因此每个图像的下载完成时间不同,从而导致图像以随机顺序添加到数组中。
如何强制按照下载开始的顺序将图像添加到文件数组中?希望不要放弃异步的好处(同时下载所有图像)。
for (var i = 0; i < imageArray.length; i++) {
imageArray[i].download(function(err, contents) {
fileArray.push(base64_encode(contents));
console.log("SIZE: "+fileArray.length);
if (fileArray.length == 9) {
res.render("home", {keyArray: keyArray, titleArray: titleArray, usernameArray: usernameArray, imageArray: fileArray});
}
});
}
【问题讨论】:
标签: javascript arrays loops asynchronous