因此,在执行下一个循环运行之前,我需要让for循环至少等待124毫秒,但是请注意,由于要从网站的API获取数据,因此可能需要超过124毫秒才能完成循环中的工作。在继续之前必须先收到。
我的想法是这样的:
for(i = 0; i < 1000; i++)
{
var startTime = Date.now();
//Do some stuff
executeTimeCheck();
function executeTimeCheck()
{
setTimeout(executeTimeCheck, 1);
if(((Date.now()) - startTime) >= 124){return;}
else{executeTimeCheck(); return;}
}
}
问题是我不断耗尽堆栈(RangeError:超出了最大调用堆栈大小)。如果您有任何想法如何进行这项工作,请告诉我。