前端两种常用的定时器

定时器:设定一定时间之后做某事,时间单位是毫秒,1秒等于1000毫秒,定时器回调函数的部分可以直接写函数或者函数名的形式;

1.setTimeout()定时器,延时之后执行一次

window.setTimeout(回调函数, 延迟的毫秒数);---window可省略

//一秒钟在控制台打印hello
setTimeout(() => {
   console.log('hello')
}, 1000);

setTimeout定时器执行结束如果不清除会一直存在,可以为它命名方便清除

//开始定时器并命名
var timer=setTimeout(() => {
   console.log('hello')  //一秒打印一次hello
}, 1000);

//关闭定时器
clearTimeout(timer)

2.setInterval()定时器,延时之后如果不清除则无限次间隔执行

window.setInterval(回调函数, 间隔的毫秒数);---window可省略

//每秒钟在控制台打印hello
setInterval(() => {
   console.log('hello')
}, 1000);

setInterval定时器会一直进行下去,不会自己关闭,所以我们可以为定时器命名用来关闭定时器

//开始定时器并命名
var timer=setInterval(() => {
   console.log('hello')  //每秒打印一次hello
}, 1000);

//关闭定时器
clearInterval(timer)

这两种定时器的区别:

setTimeout在一定时间之后只执行一次;setInterval是一定时间之后循环执行的;

至于setTimeout一次执行之后要不要清除定时器这点我也不知道,感觉清除不清除好像都可以,如果有答案也可以评论告诉我

你可能感兴趣的:(javascript,开发语言,ecmascript)