定时器
一、定时器的两种方法:
setTimeout()
setInterval()
二、setTimeout() 定时器
setTimeout()【相当于定时炸弹】 有两个参数 ,只会执行一次。
- 第一个参数:要执行的函数,可以是匿名函数,也可以是命名函数。
- 第二个参数:间隔的时间,单位是毫秒(在该时间之后执行一次)
因为该定时器的返回值是一个整数,是定时器的标识,所以当想清除该定时器的时候需要变量接收该定时器。
清除定时器clearTimeout(timerId);
参数是接收定时器的函数
var timerId;
btn1.onclick = function() {
timerId = setTimeout(function() { //此时setTimeout第一个参数是一个匿名函数
alert('爆炸了!!!砰砰砰💥💥💥💥💥💥💥💥')
},3000);
}
btn2.onclick = function() {
clearTimeout(timerId);
alert('安全了');
}
三、setInterval()定时器
setInterval()【相当于闹钟】 :也有两个参数,
- 第一个参数:执行函数
- 第二个参数:间隔时间,单位毫秒。与setTimeout不同的是,setInterval会每间隔一段时间就执行一次。
与setTimeout相同的是,取消该定时器,也需要一个变量来接收该定时器
清除定时器clearInterval(timerId)
btn4.onclick = function() {
//第一次执行也要等待间隔的时间
timerId2 = setInterval(fn,2000);
function fn() {
console.log('该起床了!')
}
}
btn5.onclick = function() {
clearInterval(timerId2);
console.log('周末了');
}