arrayname.forEach( function(element){ });
arrayname.forEach( function(element){ });
我已经成功填充了一个包含字符串元素的数组。
我最近学习了JavaScript的forEach()
arrayname.forEach(
function(element){
// some statements
}
);
我怎样才能使它工作,使"一些语句"每三秒钟只运行一次?我尝试了setInterval和setTimeOut,但它没有给我想要的结果。由于
我也试过了
arrayname.forEach( function(element){ }).delay(3000);
但是它仍然没有给我我想要的结果。(
这个函数会做到这一点-它值得尽可能避免setInterval
-它有问题,它不能保证调用之间至少delay
,特别是如果先前的调用已经排队(可能是因为窗口失去焦点):
function forEachWithDelay(arr, callback, delay, thisArg) {
var index = 0, count = arr.length;
(function loop() {
if (index < count) {
callback.call(thisArg, arr[index], index, arr); // same as .forEach
++index;
setTimeout(loop, delay);
}
})(); // start the loop immediately
}
用法:
forEachWithDelay(arrayname, function(element, index) {
// do something
}), 3000);
注意:这将以零延迟开始第一个元素的循环。
var arr = ["Microsoft", "Google", "Apple"];
var i = 0;
function loop() {
alert( arr[i] );
i++;
if( i < arr.length ){
setTimeout( loop, 3000 );
}
};
loop();
这可能是你想要的:
var i=0;
var loop = setInterval(function(){
if(i < arrayname.length){
console.log(arrayname[i]);
i++;
}else{
clearInterval(loop);
}
},3000);
方法如下:
var index = 0;
var t = setInterval(function() {
console.log(arrayname[index++]);
if (index === arrayname.length) {
clearInterval(t);
}
}, 3000);
试试这个:
$(document).ready(function () {
var array = ["first","second","third","fourth"];
var arr_length = array.length;
var index = 0;
callTime();
function callTime(){
setTimeout(function(){
index++;
if(index < arr_length){
callTime();
}
},1000);
}
});
相关文章:
- Foreach无法在Typescript中工作
- jQuery:.click(function(){(element),collapse('show',f
- $rootScope未使用forEach进行更新
- 如何制作简单的php'在Javascript中的foreach等价物
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- Javascript - element.childNodes does not see an append.newch
- 使用element简化onclick函数
- 用独立变量敲除foreach绑定
- Knockout.JS标签在foreach内部不起作用
- AngularJS,angular.element($0).scope()揭示了每个控制器的函数
- 如何使用element.myobj.prop等具有对象属性的元素
- 在foreach中获取ajax结果
- 如何在foreach循环中对每个产品单独应用评级系统
- 如果数组仍在执行,async.forEach()将运行我添加到数组中的新元素
- element.dataset in Internet Explorer
- 错误:Can't在从forEach循环发送标头后设置标头
- Protractor:element.getText()返回一个对象,而不是String
- 为什么我们在ES2015中需要一个新的for循环结构,而我们已经有了for、forEach
- arrayname.forEach( function(element){ });
- Foreach element Javascript json