首頁>Club>
8
回覆列表
  • 1 # 舊時光之

    第三種的方式

    //省略程式碼 // 計數器 var count = 0; // 全域性鎖 var lock = []; var l = urls.length; // 阻塞函式 function block(){ let _resolve; return new Promise((resolve,reject)=>{ _resolve=resolve; // resolve不執行,將其推入lock陣列; lock.push(_resolve); }); } // 叫號機 function next(){ lock.length&&lock.shift()() } async function bao(){ if(count>=3){ //超過限制利用await和promise進行阻塞; await block(); } if(urls.length>0){ console.log(count); count++ await loadImg(urls.shift()); count--; next() } } for (let i = 0; i < l; i++) { bao(); }

  • 中秋節和大豐收的關聯?
  • 怎樣鑑別毒菇?