一旦获得了超时句柄,就可以用clearTimeout来取消函数执行计划,像这样:
var timeoutTime = 1000; // one second
var timeout = setTimeout(function() {
console.log(“timed out!”);
}, timeoutTime);
clearTimeout(timeout);
这个例子里,计时器永远不会被触发,也不会输出”time out!”这几个字。你也可以在将来的任何时间取消执行计划,就像下面的例子:
var timeout = setTimeout(function A() {
console.log(“timed out!”);
}, 2000);
setTimeout(function B() {
clearTimeout(timeout);
}, 1000);
代码指定了两个延时执行的函数A和B,函数A计划在2秒钟后执行,B计划在1秒钟后执行,因为函数B先执行,而它取消了A的执行计划,因此A永远不会运行。
制定和取消函数的重复执行计划
setInterval和setTimeout类似,但是它会以指定时间为间隔重复执行一个函数。你可以用它来周期性的触发一段程序,来完成一些类似清理,收集,日志,获取数据,轮询等其它需要重复执行的任务。
下面代码每秒会向控制台输出一句“tick”:
var period = 1000; // 1 second
setInterval(function() {
console.log(“tick”);









