js中两种定时器的设置及清除
循环执行:
var timeid = window.setInterval(“方法名或方法”,“延时”)
window.clearInterval(timeid)
<script type="text/javascript">
$(document).ready(function(){ //循环执行,每隔1秒钟执行一次 1000 var
t1=window.setInterval(refreshCount, 1000)
function refreshCount() {
console.log("ready")
}
//去掉定时器的方法
window.clearInterval(t1)
})
</script>
2.定时执行:当方法执行完成定时器停止(但是定时器还在,只不过没用了)
var tmid = window.setTimeout(“方法名或方法”, “延时”)
window.clearTimeout(tmid)
<script type="text/javascript">
$(document).ready(function(){ //定时执行,5秒后执行
var t1=window.setTimeout(refreshCount, 1000 * 5) function refreshCount() {
console.log("ready")
} //去掉定时器的方法 window.clearTimeout(t1)
})
</script>
1、定时器2、清除定时器
3、例如: 过一秒钟 在控制台上打印出 一个数字 比如1,再过一秒钟 打印出2 ....,点击清除定时器 终止打印 。
4、 setTimeout 和 setInterval的区别是:
5、 sessionStorage 存储之后 页面刷新 缓存的值不会消失, 但是 把tab页 或者叫 会话 关闭之后,缓存的值就不存在了。
6、 localStorage会一致存储在本地,会话或者tab页关闭也不会消失 ;
localStorage是和地址有关系的,地址改变了,localStorage里面的值就不存在了;
前面地址没有发生改变的话,localStorage依然存在 ,虽然页面改变了;
JavaScript中可以实现定时器功能的有两个函数——setTimeout和setInterval,二者的不同是setTimeout只执行一次,而setInterval是以指定的时间间隔重复执行。setTimeout可以使用clearTimeout取消,setInterval可以使用clearInterval取消。
有时,我们会用setTimeout(callback,0)将任务推迟一段很短的时间,但是其实通过process.nextTick(callback)来实现会更好,因为Node中的事件循环在一个处理事件队列的循环里运行,每循环一次称为一个“tick”。使用process.nextTick(callback)回调函数会在事件队列内所有事件处理完毕后,会在下次事件循环之前被调用,即进入下个event loop前执行;而setTimeout(callback,0)把回调延迟到后面的某个event loop执行,具体由设置的延时时间和event loop的执行时间决定。
这样可以保证my_async_function函数是顺序执行。