读取当前时间,计算直到下一次秒为':31'的秒数,然后使用具有适当延迟的setTimeout.你可以使用这样的东西:
var atSeconds = 31;
var secondsLeft = atSeconds - new Date().getSeconds();
if (secondsLeft <= 0) secondsLeft += 60;
setTimeout(foo, secondsLeft * 1000);
Run Code Online (Sandbox Code Playgroud)
请记住在函数中再次调用它foo以便重复.