技术文摘
JavaScript 中定时器的终止方式
JavaScript 中定时器的终止方式
在 JavaScript 编程里,定时器是很实用的工具,可按设定时间执行代码。不过,完成任务后及时终止定时器很重要,否则可能导致资源浪费,甚至程序出现异常。下面就来介绍下 JavaScript 中定时器的终止方式。
JavaScript 提供了两种定时器函数:setTimeout() 和 setInterval()。setTimeout() 是在指定延迟时间后执行一次代码,而 setInterval() 会每隔指定时间就重复执行代码。
对于 setTimeout() 定时器,终止它要用到 clearTimeout() 函数。使用时,在调用 setTimeout() 时会返回一个定时器 ID,这个 ID 作为参数传入 clearTimeout() 就能终止定时器。比如:
let timerId = setTimeout(() => {
console.log('这段代码不会执行');
}, 2000);
clearTimeout(timerId);
在上述代码中,setTimeout() 原本计划 2 秒后执行函数,但 clearTimeout(timerId) 提前终止了定时器,所以函数里的内容不会打印。
setInterval() 定时器的终止方式与之类似,使用 clearInterval() 函数。同样在调用 setInterval() 时会返回一个 ID,将其作为参数传给 clearInterval() 就能停止定时器重复执行代码。例如:
let intervalId = setInterval(() => {
console.log('定时器正在运行');
}, 1000);
// 假设 5 秒后终止定时器
setTimeout(() => {
clearInterval(intervalId);
}, 5000);
这里 setInterval() 每秒打印一次 “定时器正在运行”,但 5 秒后通过 clearInterval(intervalId) 终止了定时器,就不会再打印。
需要注意,在使用闭包和定时器时,要确保定时器 ID 能被正确访问。如果 ID 作用域不正确,可能无法终止定时器。
掌握 JavaScript 中定时器的终止方式,能更好地控制代码执行流程,提升程序性能和稳定性。合理运用 clearTimeout() 和 clearInterval(),能避免不必要的资源消耗,让程序更加健壮可靠。无论是简单脚本还是复杂应用程序,这都是必须掌握的重要技巧。
TAGS: JavaScript定时器 清除定时器函数 终止方式 定时器应用场景
- 英国大学研究:一块 GPU 模拟猴子大脑 普通台式机成超算 成果登 Nature 子刊
- 临近新年,借助 JS 为网页增添烟花效果
- Ubuntu Unity Remix 20.04.2 登场 再遇经典 Unity 桌面环境 Linux
- GitHub 热度爆表!任意爬取,完备开源爬虫工具集
- Builder 模式在构建线程池中的应用
- 16 个写代码好习惯,降低 80%的 bug 发生率
- 鸿蒙 HarmonyOS 单模块编译及源码解析
- Java 延迟加载的应用实践
- 500 行 SQL 助力快速实现 UCF
- Monorepo 中利用 Maven 对多微服务进行版本控制的方法
- 在 ASP.Net Core 中运用 SignalR 的方法
- 英国科学家在芯片上编织类人脑干细胞
- Go 语言中 Time 包的基础详解
- 宏定义:提升代码逼格的神器——从入门至放弃
- 极简图记区块链