JS 延时器setTimeout, 计时器setInterval
在JavaScript中,当使用setTimeout或setInterval定义方法并赋值给变量后,即使调用clearTimeout、clearInterval清理时,该变量仍会保留值
原因:
变量存储的是计时器ID,setInterval返回的是一个数字类型的ID(表示第几个定时器),这个ID会被存储在变量中。
clearInterval仅清除计时器本身,不会自动清除变量存储的ID值。
清除计时器与变量赋值的区别:
clearInterval(timer):仅停止计时器的执行,释放计时器占用的系统资源。
timer = null:仅将变量指向null,清除了变量对计时器ID的引用,但若未先调用clearInterval,计时器仍会继续运行。
内存管理机制
JavaScript的垃圾回收机制不会因clearInterval而自动清除变量。若需彻底释放,需手动将变量赋值为null或undefined(但需先调用clearInterval)。
示例代码说明:
let timer = setInterval(() => console.log("计时器"), 1000);
clearInterval(timer);
console.log(timer); // 输出原ID值(如1、2等),但计时器已停止
timer = null; // 显式清除变量引用
总结:变量的值是独立于计时器生命周期的,需分别处理清理逻辑。
JS 延时器setTimeout, 计时器setInterval的更多相关文章
- js里的setTimeout和setInterval之后的页面是空白,阻塞浏览器的document对象,但是不阻塞script方法
js里的setTimeout和setInterval是否进程阻塞? 阻塞浏览器的document对象,但是不阻塞script方法 当你在setTimeout中使用document.write时是不行的 ...
- 关于js中的setTimeout和setInterval
http://ejohn.org/blog/how-javascript-timers-work 这是John的一篇博文说到setTimeout和setInterval的区别,在看js高效图形编程的时 ...
- AngularJs 延时器、计时器
1.$timeout延时器 apptest.controller("main",function($scope,$timeout){ $scope.pink="pink& ...
- js中的setTimeout和setInterval
在html页面中要使用自动刷新功能时,可以是使用js中setTimeout和setInterval: 一.使用方法 setTimeout的使用setTimeout('要调用的Js方法', 调用的延迟时 ...
- js定时器window.setTimeout和setInterval
window.setTimeout(function(){ document.getElementById("editorindex&q ...
- JS动画三剑客——setTimeout、setInterval、requestAnimationFrame
一.前言 前端实现动画效果主要有以下几种方法:CSS3中的transition 和 animation ,Javascript 中可以通过定时器 setTimeout.setinterval,HTML ...
- js学习--浏览器对象计时器setInterval()与setTimeout()的使用与区别
一.setInterval()与setTimeout()的定义: 二.setInterval()与setTimeout()的使用: 1.setInterval()与clearInterval() ...
- js延时函数setTimeout
实现一个延时执行的效果,现记录如下: <html> <head> <script type="text/javascript" src="/ ...
- js中的setTimeout和setinterval 用法说明
setTimeout("countSecond()", 1000)://countSecond()是函数(方法) setTimeout 只执行一次函数,需要传递两个参数1是函数名, ...
- JS延时器 定时器 暂停器 中断器
// numberMillis 毫秒 function sleep(numberMillis) { var now = new Date(); var exitTime = now.getTime() ...
随机推荐
- Codeforces Round #708 (Div. 2) ABC1C2题解
A. Meximization 第i位优先放等于i-1的,没有的话就后面随便填了. view code #include<iostream> #include<string> ...
- AtCoder Beginner Contest 187 ABCDE 题解
A - Large Digits 思路:签到题,读入字符串即可. view code #include<iostream> #include<string> #include& ...
- Codeforces Round #603 (Div. 2) ABC 题解
A. Sweet Problem 题意:有三个数,每次可以选两个-1,问最多能挑多少次. 思路:贪心一下.策略如下: 1.先将三个数排个序. 2.然后如果最大的和次大的不一样多的话,就让最大的和最小的 ...
- 日事清助力制造业IPD全生命周期管理:从开发流程到持续优化的跨部门协作实践
一.先聊聊IPD,它到底是什么 在竞争激烈的市场中,产品的快速.精准开发是企业致胜的关键.而为了确保新产品能够顺利从概念到落地,越来越多的企业采用集成产品开发(IPD, Integrated Prod ...
- SciTech-EECS-Circuits-Power Electrics(功率器件): 电弧/电焊/电解/电铍:大功率 的 电流 时问+波形 的 数控脉冲放电 实现
SciTech-EECS-Circuits-Power Electrics(功率器件): 电弧/电焊/电解/电铍:大功率 的 电流 时问+波形 的 数控脉冲放电 实现 电焊 原理上是调制 高压大功率 ...
- SciTech-EECS-PWM(Pulse Width Modulation脉宽调制): 工作原理+特点+应用场景+实例: 将Digital Signal(数字信号) 转换为高精密的调制控制信号
- SciTech-EECS-电路设计-电路设计与仿真系统 + SPICE NetList(网表文件) +仿真描述 + 元器件模型
参考网文: 系统地介绍类SPICE集成电路仿真器的实现原理, 包括: MNA(改进节点分析).非线性器件建模.DC/AC分析.时域/(复)频域仿真以及涉及的数值方法. 基于本文原理,实现了SPICE- ...
- Win11系统电脑关机后自动开机的问题
有不少电脑基地的小伙伴下载Win11操作系统来使用了,但有小伙伴遇到电脑关机之后突然又自动开机的问题,那么应该怎么办呢?下面技术员小编就来分享解决方法吧. Windows 11 关机后自动开机可能由硬 ...
- C++迭代器iterator详解
https://blog.csdn.net/QIANGWEIYUAN/article/details/89184546?utm_medium=distribute.pc_relevant.none-t ...
- 亚马逊发布TEACh数据集训练家用机器人
新数据集助力训练家用机器人执行人类指令 亚马逊科学团队公开发布的TEACh数据集包含来自模拟环境的3000多组对话及关联视觉数据,旨在推动能完成复杂家务任务的AI助手研发. 数据集概览 数据规模:43 ...