定时器 - setInterval
setInterval一旦开启,里面的代码就会按照写入的时间执行,每隔一段时间就会调用一次,没有关闭的话不会停止。
定时器开启:setInterval(回调函数, 间隔时间-毫秒) 返回一个id值
定时器关闭:clearInterval( 定时器的id )` 就能关闭
// 开启一个定时器,并把id存到timerId这个变量里
let timerId = setInterval( function () {
console.log('hello world')
}, 2000 )
// 关闭定时器,传入这个id
clearInterval( timerId )
// 如何保证用户多次点击时,只有一个定时器
<button id="btn" onclick="fn()">生成一个定时器</button>
<button id="close" onclick="close()">停止定时器</button>
<script>
let timerId ;
function fn(){
timerId = setInterval(function(){
// 每次生成时都把之前的清理掉
close()
console.log("1")
},2000)
}
function close(){
clearInterval(timerId)
</script>
定时器 - setTimeout
setTimeout可以理解为把一段代码延迟执行,回调函数只会调用一次
定时器开启:setTimeout(回调函数, 间隔时间-毫秒) 返回一个id值
定时器关闭:clearTimeout( 定时器的id )` 就能关闭