javascript 实现一个定时遍历数组的方法,每隔一段相同的时间取出数组中的一项进行操作

如果使用频繁建议 可以利用原型链,方法挂在在Array的prototype上面

setTimeInLoop方法

Array.prototype.setTimeInLoop= function(fn, time) {
    let _self = this,
        timer = null,
        index = 0;
    function setTimeGetValue(i) {
        fn(_self[i], i);
    }
    timer = setInterval(() => {
        setTimeGetValue(index);
        index++;
        if(index == _self.length){
            clearInterval(timer)
        }
    }, time);
}; 
123456789101112131415

使用

传入回调函数以及间隔时间

let arr = [1,2,3,4]
arr.setTimeInLoop(((item,index)=>{
	console.log(item,index)
}),1000)
// 每隔 1秒钟打印一次 值和索引
12345