Re: [问题] 如何在循环中延迟?

楼主: mhsu2k9 (mhsu2k9)   2018-07-05 22:45:47
(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的作法也是不如预期
: 请问各位大神有什么方法可以做到我要的效果呢?
作者: ggbast (GG)   2018-07-06 09:54:00
感谢大大帮忙 :D
作者: akito117 (宗益)   2018-07-16 17:42:00
推一下,之前也有类似的问题,感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com