js 定时器 执行一次和重复执行

js 定时器 执行一次和重复执行

1.执行一次(延时定时器)

var t1 = window.setTimeout(function() {
    console.log(‘1秒钟之后执行了’)
    window.clearTimeout(t1) // 去除定时器
},1000)

2.重复执行(间歇定时器)

var t2 = window.setInterval(function() {
    console.log(‘每隔1秒钟执行一次’)
    window.clearInterval(t2) // 去除定时器
},1000)

注意:单纯的使用setInterval会导致页面卡死,其原因与JS引擎线程有关,用通俗话说就是setInterval不会清除定时器队列,每重复执行1次都会导致定时器叠加,最终卡死你的网页。但是setTimeout是自带清除定时器的

setInterval(function() {
    setTimeout(function() {
        console.log(‘1秒钟之后执行了’)
    },0)
},1000)

setInterval必须放在外层(在内层会导致页面卡顿直到崩溃),内层配合setTimeout,即可无限次调用

你可能感兴趣的:(js 定时器 执行一次和重复执行)