js 中的for循环 怎么每循环一次睡眠3秒???

每循环一次for, 睡眠3秒后,然后执行方法( collClickRemoteAssist(record);)
继续循环一次,睡眠3秒,执行方法。。。。。
------------------------------------以下是setTimeout方法测试-------不可取--------------
setTimeout( function(){
collClickSecond(record);
},3000 );
要是使用setTimeout方法,程序会睡眠3秒后一次执行完循环,等于延迟了3秒。
怎么解决?????????

 <script>
var arr2=['a','b','c'];
function intervalFor(time,arr){
  var index=0;
  setTimeout(function(){
     console.log(arr[index]);
     index++;
     if(index<arr.length){
        setTimeout(arguments.callee,time);
     }else{
        console.log('循环结束');
     }
  },time);
}
intervalFor(3000,arr2);
</script>

var start = new Date().getTime();
while(true) {

        if(
        new Date().getTime()-start > 1000*3
        ) break;}


        你可以这样,在你的每个for循环都加上这个。 原理就是时间差3S

http://blog.csdn.net/w172087242/article/details/51261852

如果有帮助,希望采纳

不能用for,用setTimeout递归执行。。

 <div id="dv"></div>
<script>
    var arr = [1, 2, 3, 4, 5];
    function delayEachArray(delay, arr, index) {
        if (index == undefined) index = 0;
       document.getElementById('dv').innerHTML+=arr[index]+'<br>';
        index++;
        if (index < arr.length) setTimeout(function () { delayEachArray(delay, arr, index); }, delay);
        else document.getElementById('dv').innerHTML +=  '数组遍历结束<br>';
    }
    delayEachArray(3000, arr);
</script>

赞同 danielinbiti 的方法,只是我在想有没有更好的方法,更优雅的写法;

我的睡眠3S有问题?请那个踩的人出来解释解释!

借danielinbiti代码一用:

var arr2=['a','b','c']; function intervalFor(time,arr){ var index=0; setTimeout()每隔几秒执行一次 相对应的有clearInterval(对象) 结束掉某个循环 setTimeout(function(){ console.log(arr[index]); index++; if(index<arr.length){ setTimeout(arguments.callee,time); }else{ console.log('循环结束'); } },time); } intervalFor(3000,arr2);