一个纯Javascript计时器,类似于setInterval

时间:2014-01-05 16:06:09

标签: javascript function

我试图每1秒重复一次函数,我知道这对setInterval函数来说非常好,但遗憾的是我正在运行程序的脚本,所以它没有' t具有浏览器javascript函数的优势(setInterval()setTimeout()alert(),基本上所有window related functions) 那么是否可以每1秒执行一段代码或包含所述代码的函数?

请记住,我最近才开始在Javascript中编写代码,并且只对它有基本的了解。

1 个答案:

答案 0 :(得分:0)

你的问题很模糊,但你似乎避免清理它,所以如果我的答案结束我道歉,但这是我能做的最好的。

我解决这个问题的方法是改变环境以允许setTimeout / setInterval函数,类似于浏览器的操作方式。

如果该选项不可用,您可以使用评论中建议的路线标记:忙 - 等到日期是您想要的日期,类似于以下内容:

var lastSecond = (new Date()).getSeconds();
while (true) {
  if (lastSecond !== (new Date()).getSeconds()) {
    lastSecond = (new Date()).getSeconds();
    console.log('Time is:', new Date());
  }
}

演示:http://jsbin.com/aNiRiZE/1/edit

显然忙碌等待将阻止正在运行它的线程,所以我强烈建议在你的环境中为setTimeout / setInterval注入实现的第一个解决方案。