三、定时器
3.1、定时器种类
window对象给我们提供了2个非常好用的方法定时器。
● setTimeout( ) 【只调用一次】
● setInterval( ) 【重复调用】
3.2、setTimeout()
(1)setTimeout( )调用
setTimeout( )方法用于设置一个定时器 ,该定时器在定时器到期后执行调用函数(只调用一次)。
注意:
1.window可以省略。
2.这个调用函数可以 直接写函数 , 或者写 函数名 或者采取字符串 ‘ 函数名() ’ 三种形式。第三种不推荐。
3.延迟的亭秒数省略默认是0。如果写。必须是毫秒。
4.因为定时器可能有很多,所以我们经常给定时器赋值一个标识符。
(2)、setTimeout()定时器(回调函数)
setTimeout(这个调用函数我们也称为回调函数callback。
普通函数是按照代码顺序直接调用。
而这个函数,需要等待时间,时间到了才去调用这个函数,因此称为。
简单理解:回调, 就是回头调用的意思。上一件事干完,再回头再调用这个函数。
以前的element.οnclick= function(}或者element. addEventListener(click", fn);里面的函数也是回调函数。
(3)、停止setTimeout()定时器
clearTimeout ()方法取消了先前通过调用setTimeout ()建立的定时器。
注意:
1.window可以省略。
2.里面的参数就是定时器的标识符。
3.3、setInterval( )定时器
(1)、调用定setInterval( )时器
window . setInterval (回调函数,[间隔的亳秒数] );
setInterval ()方法 重复调用一个函数,每隔这个时间,就去调用一次回调函数。
注意:
1.window可以省略。
2.这个调用函数可以 直接写函数 , 或者写 函数名 或者采取字符串 ‘ 函数名() ’ 三种形式。第三种不推荐。
3.延迟的亭秒数省略默认是0。如果写。必须是毫秒,表示每隔多少毫秒就自动调用这个函
4.因为定时器可能有很多,所以我们经常给定时器赋值一个标识符。
(2)、停止setInterval( )定时器
clearInterval ()方法取消了先前通过调用set Interval ()建立的定时器。
注意:
1.window可以省略。
2.里面的参数就是定时器的标识符。
3.4、this
this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,-般情况下this的最终指向的是那个调用它的对象
1.全局作用域或者普通函数中this指向全局对象window ( 注意定时器里面的this指向window )。
2.方法调用中指向方法。
3.构造函数中指向fun实例对象。