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,即可無限次調用
如果對你有幫助,公衆號搜索:前端早知道筆記 或掃描公衆號二維碼: