如何在控制台终止setInterval创建的无限循环?
先看你给出的示例场景:
我们可以运行这段JavaScript代码:
setInterval(function(){console.log("Hello, SO!")}, 2000);
终端里会每两秒重复输出Hello, SO!,下图显示了6次重复输出的效果:
怎么停止控制台里的无限循环?
当然有办法啦!给你分享几个常用的停止方式:
- 快捷键终止:不管是浏览器开发者工具的控制台,还是Node.js的终端窗口,按下
Ctrl + C(Windows/Linux系统)或者Cmd + C(Mac系统),就能直接打断当前运行的脚本,这个定时循环自然就停了。 - 用代码清除定时器:如果运行代码时提前把定时器的ID存起来,之后就能精准停止它。比如把代码改成这样:
要是之前没保存ID,也可以试试在浏览器控制台输入// 先保存定时器的ID const timerId = setInterval(function(){console.log("Hello, SO!")}, 2000); // 想要停止的时候,在控制台输入这句 clearInterval(timerId);clearInterval(window.setInterval),不过这个操作会清除所有定时器,谨慎使用哦。 - 刷新页面(仅浏览器环境):如果是在浏览器控制台跑的代码,直接刷新当前页面,所有正在运行的脚本都会被终止,循环也就停了。
内容的提问来源于stack exchange,提问作者Clone
相关产品推荐
相关产品推荐

