鉴于现阶段需求,大量图片(一次限制500张)依次单张上传,不想同时进行请求,可采用以下两种方法,第一种请求间隔递增,第二种间隔相同时间请求。
let a = [1,2,3,4,5];
function delay(index){
return new Promise((resolve)=>{
setTimeout(resolve,index*1000);
});
}
async function test(){
for(let [index, item] of a.entries()){
await delay(index);
console.log(item);
console.log("-----------");
}
console.log("all done -1");
}
test();
或者
let a = [1,2,3,4,5];
function delay(){
return new Promise((resolve)=>{
setTimeout(resolve,1000);
});
}
async function test(){
for(let item of a){
await delay();
console.log(item);
console.log("-----------");
}
console.log("all done -1");
}
test();
直接复制代码运行可查看输出效果
第一种:第一项和第二项输出之间间隔1s第二项和第三项输出之间间隔2s依次类推
第二种:每次间隔1s后输出
实际间隔时间可自行修改,此处主要用于演示效果明显