JavaScript定时器有以下两个方法:
setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。setInterval()函数用法如下:
setInterval() (“调用函数”,“周期性执行或调用code之间的时间间隔”),
function hello(){ alert(“hello”); }
重复执行某个方法:
var t1= window.setInterval(“hello()”,3000);
去掉定时器的方法
window.clearInterval(t1);
setTimeout() :在指定的毫秒数后调用函数或计算表达式。
setTimeout()函数用法如:setTimeout(“调用函数”,“在执行代码前需等待的毫秒数。”)
只执行一次,3 秒后显示一个弹窗:var t=setTimeout(function(){alert(“Hello”)},3000)
实现循环调用需要把setTimeout定时器函数写在被调用函数里面。如下:
function show(){
alert(“Hello”);
var myTime = setTimeout(“show()”,1000);
}
关闭定时器的用法:clearTimeout(myTime);
其中,myTime为setTimeout()函数返回的定时器对象。
从性能上来说,如果针对的是不断运行的代码,不应该使用setTimeout,而应该是用setInterval,因为setTimeout每一次都会初始化一个定时器,而setInterval只会在开始的时候初始化一个定时器。