Javascript-如何在给定的时间执行函数?(具有可变的时间段)



我必须向后端服务器发出请求以检索一些数据,在响应中,我必须再次发出请求。例如:我在上午12:00提出请求,响应附带了我需要的数据,而且下次我必须再次提出请求,例如"16:00";。

只要应用程序在运行,这个"循环"就永远不会结束。问题是,我的代码是有效的,但我不知道这是否是一个好的实践,因为我一遍又一遍地调用同一个函数
如果可以的话,有人能向我解释一下我在做什么吗?

这是我迄今为止的代码:

aFunction() {
this.programacionService.getNextData().subscribe((r: any) => {
console.log(r);
window.setTimeout(() => {
// Programming logic
// Repeat the process
this.aFunction.call(this);
},
// This is a method to format the hour of the day
this.functionTimeout(r.hourToMakeTheRequestAgain)
);
})
}

这是正确的吗?它不会随着时间的推移使"callStack"溢出吗?提前感谢!

我不知道这是否属实,但:只要您的请求不会占用服务器的大量工作,您就可以了。

最新更新