js中的for循環結束后設置執行事件( 與setInterval和setTimeout一起用)


在js for循環中的定時器。正常來講循環多少次就會觸發多個定時

例如 

 var time
    for (var i=0;i<3;i++){
        
        time=setTimeout(()=>{
            console.log('定時器')
        },100)
    }

  這樣會打印出3次定時器

 

當我只想在for循環最后一次結束后才觸發一次事件,

代碼

  var time
    for (var i=0;i<3;i++){
        clearTimeout(time)
        time=setTimeout(()=>{
            console.log('定時器')
        },100)
    }

  主要是在cleraTimeout對對象沒有要求的前提下作用

這樣打印出來的只有1次定期器,不過要注意的是 setTimeout賦值的對象是全局的,不然就不能覆蓋到前面一個

setInterval同理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM