定时器的作用:
每隔一段时间或者延迟一段时间,执行一段指定的代码。
定时器的分类:
1.延迟定时器 setTimeout (timeout超时)
2.间隔定时器 setInterval (interval间隔)
清除(关闭)定时器:
clearTimeout(index);
clearInterval(index);
定时器管理:
养成一个好习惯确保单个效果中,只有一个定时器在执行,下面是两种管理方法
1. 在定时器开启之前,确保定时器是关闭的 (清楚定时器)
2. 判断定时器如果已经开启了,就先不开启 (设置开关)
每个定时器都会有一个返回值(id)
定时器的问题
1.定时器里的this指向
定时器 是 js本身就定义好的函数,它不是我们自己去定义的,它被定义在了window下面
定时器中的this都是指向window,因为定时器是通过window进行调用的
2.一个参数不推荐使用字符串
3.time参数默认为0,但并不会马上执行,要大于4ms,推荐16ms以上
4.关于传参的问题,有小括号会立即执行,定时器失效,解决办法用匿名函数包一下