setTimeOut定时器实现数组内容循环获取

 

功能需求,一组数据,不断重复循环播放

实现方式 setTimeout

注意功能,页面跳转后删除定时器

效果

  setTimeOut定时器实现数组内容循环获取

 

页面关闭比如在vue的 beforeDestroy生命周期
调用 clearTimeout(t) 关闭定时器

 

代码如下

let t     const data = [1, 1, 1, 1, 1, 1]     function settime (resolve) {       if (t) {         clearTimeout(t)       }       t = setTimeout(resolve, 1000)     }
    function timeout () {       return new Promise(resolve => {         settime(resolve)       })     }     // 启动循环     (async function circling () {       for (var i = 0; i < data.length; i++) {         // 处理其他逻辑         console.log('当前内容', i)         await timeout()         if (i === data.length - 1) {           // 无限循环           i = -1         }       }     })()    
上一篇:关于任务队列,这几道代码执行顺序的题你都能答对吗?


下一篇:字节一面代码题2021/9/6