看板 Ajax 關於我們 聯絡資訊
(async function loop() { for (let i = 0; i < 10; i++) { await new Promise((resolve) => { console.log(i.toString()); setTimeout(resolve, 2000); }); } })() //每次console.log 後,延遲2000ms再進下一迴圈 ※ 引述《ggbast (GG)》之銘言: : 最近剛踏入javascript的領域 : 我想在一個迴圈中重複執行某一個function : 這個function是個同步函數 : 我希望每次都做完這個function才延遲 : 大概像是下面這樣 : while (cnt<999) { : function() : delay() : cnt++ : } : 我試過了setTimeout 結果跟預期的不同 : 用了promise跟then的作法也是不如預期 : 請問各位大神有什麼方法可以做到我要的效果呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.2.82 ※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1530801950.A.7CF.html
ggbast: 感謝大大幫忙 :D 07/06 09:54
ggbast: 我試過後這方法確實可行 07/06 22:30
akito117: 推一下,之前也有類似的問題,感謝 07/16 17:42