javascript - 我想在node js中编写一个10秒后退出的计时器程序。但我在 10 点后得到连续输出。请更正我的代码

标签 javascript node.js

var i=0;

var myTimer=function(){

i++;
console.log(i);

};

console.log("Timer starts \n");
setInterval(myTimer,1000);


setTimeout(function(){

console.log(" Hey! exiting the timer after 10 seconds");

clearInterval(myTimer);
},10*1000);

最佳答案

您应该在 setInterval() 引用上调用 clearInterval(),而不是在每个间隔调用的函数上。它应该看起来像这样:

var function = function(){};
var intervalFunc = setInterval(function,1000);
clearInterval(intervalFunc);

如上所述here .

更新

正如 vivek doshi 更详细地解释的那样,在您的情况下,您只需添加对计时器的引用并正确清除它:

var timer = setInterval(myTimer,1000);
clearInterval(timer);

关于javascript - 我想在node js中编写一个10秒后退出的计时器程序。但我在 10 点后得到连续输出。请更正我的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44722161/

相关文章:

javascript - 网站前端使用backbone,后端使用nodejs

javascript - 如何将 res 对象传递到 Jest 模拟函数中的回调函数中?

javascript - 将焦点设置在某个类名称的下一个元素的输入字段上

javascript - 使用 switch case JavaScript 更改图像

javascript - 从其他 .html 文档加载内容

python - 来自服务器的计时应用程序和精确时间戳 - 无服务器?

node.js - 私有(private) NPM Sinopia 注册表安装错误

node.js - 从 meteor 应用程序内的目录中读取文件

javascript - 递归函数无法正常工作

javascript - 单击使用 jquery 在表中显示数据