我怎样才能运行代码每小时使用JS?

我做了类似的事情

setInterval(function() { console.log("!"); }, 1000 * 60 * 60); 

我想每小时运行一次console.log但代码不能像我想要的那样工作。

假设我在1:30运行代码,那么它将在2:30运行console.log 。 但是我想要做的是每小时运行一次代码。 像1点,2点,3点。

有没有办法做到这一点? 谢谢!

这应该做到这一点:

 let millisPerHour = 60 * 60 * 1000; // use 5 * 1000 (every 5 seconds) for testing let millisPastTheHour = Date.now() % millisPerHour; let millisToTheHour = millisPerHour - millisPastTheHour; let fn = function() { console.log("Running at " + new Date()); } setTimeout(function() { fn(); setInterval(function() { fn(); }, millisPerHour); }, millisToTheHour);