是否每次都需要清除timeout变量?
is it necessary to clear the timeout variable each time
在我的应用程序中,我使用了很多setTimeout函数,所以我担心这会导致性能问题:
setTimeout(function(){
// do something
},0);
我发现人们用这种方式:
var t=setTimeout(function(){
// do something
clearTimeout(t);
});
我想知道这是否必要?
不,对象将自动销毁(至少应该如此)。当需要移除已经设置的超时时,需要调用clearTimeout
。
例子:你设置了5秒的超时时间悬停在某些元素,但用户移动光标从元素超时之前-所以你需要删除已经初始化的超时
不,这是不必要的。使用clearTimeout()
取消调度仍然在未来的超时(即防止发生)。
在发生后(或正在发生时)清除超时没有任何积极作用。
这就足够了。
setTimeout(function(){
// do something
},0);
不,它不是。只有在需要在超时发生之前取消超时时才需要该变量。从回调内部调用clearTimeout
没有效果,因为不再有超时停止
只有当你想在它发生之前取消它时才会使用
相关文章:
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- 单击jquery清除输入值
- 如何在Microsoft VirtualEarth 6.3中使用纯javascript清除整个形状层
- 清除以前的$_GET值或不获取仅隐藏字段的值
- Javascript清除缓存以清除基本身份验证凭据
- $timeout如何在angularJs中工作
- 清除启动日期选取器值
- 在 SlickGrid 中编辑后,根据不同列中的另一个单元格清除单元格
- php页面,该页面在清除值后接受输入
- 清除数据并将旧值附加到文本框中
- 使用javascript清除Asp.NET FreeTextBox(RTF文本框)
- 如何使Visual Studio自动清除Javascript控制台
- 使用javascript或html本身清除文本字段
- 清除函数中if语句内部不起作用的间隔
- 我应该/如何清除mousemove JQuery事件侦听器
- 从定位目标中的元素中清除类
- Interval(或timeOut)内的jquery.animate在清除后继续
- 是否每次都需要清除timeout变量?
- Javascript内部-在它触发之前清除timeout
- 如何在angularjs中清除$timeout ?