【发布时间】:2018-01-17 01:45:28
【问题描述】:
使用计时器,我可以每 1 分钟调用一次函数,但不是我想要的方式,如果现在是 10:35:21,则应该像这样调用函数:
at 10:35:21
at 10:36:00
at 10:37:00
at 10:38:00
at 10:39:00
at 10:40:00
etc
如何做到这一点?这是我当前的代码:
let startTime = new Date(Math.ceil(new Date().getTime() / 60000) * 60000);
let source = Rx.Observable.timer(startTime, 60000).timeInterval().pluck('interval');
this.Subscription = source
.subscribe(data => { //code });
【问题讨论】:
-
由于其性质,您无法确定何时会在 javascript 中调用某个回调...
setTimeout(cb, 1000)并不真正意味着在 1000 毫秒内调用 cb。这意味着wait for at least 1000ms and then call the callback at your first free slot。 stackoverflow.com/questions/21097421/… -
避免这种不准确性如何以最简单的方式做到这一点?
-
你不能,这就是重点。您不能使用 Javascript 保证这样的时间
标签: javascript angular typescript ionic-framework