我是 Java 的JavaScript新手,我正在尝试实现一个sleep(millis)
函数。基本上我需要向端点发出请求,如果它返回错误,请稍等片刻,然后再次发出请求......
我找到了 JavaScript 的setTimeout()
函数,但它有一个奇怪的(对我来说)行为,因为代码似乎仍在运行,我不想做任何事情,只能等待......
经过一番研究,我在这里找到了这个功能:
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > milliseconds){
break;
}
}
}
使用此功能,我可以完全实现我想要的,但我知道这可能不是正确的方法,而且我没有找到任何其他类似的解决方案......所以,我想知道,在你看来,这是:
- 一个完全有效的解决方案?
- 一个不错的解决方法?
- 只是眼睛疼吗?