定时器是用来在某个时间做一件事!
定时器里可以再生成定时器
定时器返回值是一个当前页面中开启的第几个定时器(序列号)
在开启定时器之前,最好先清除之前的定时器,防止定时器累加
- 延时定时器:setTimeout(code, time[, param1,…,paramN])
param1,…,paramN是定时器完成code之前要传入的参数,但IE9及以下浏览器不支持,有兼容性问题。
clearTimeout() - 间隔定时器:每隔一段时间就执行一次代码
setInterval(function(){}, time)
clearTimeout() - 定时器的问题
(1)this的指向问题:谁调用函数,函数中的this就指向谁;而定时器是JS自带的方法,是由window调用,所以定时器的this是指向window,解决办法是将需要指向的对象存储起来,然后在定时器中进行调用
例子:
当需要重复做一件事的时候,何时使用定时器?何时使用for循环?
当需要让用户看到过程的时候用定时器,不需要用户看到过程的时候用for循环