您可以使用简单的数学方法来解决:
for (var i=0;i<=10;i++) { (function(ind) { setTimeout(function(){console.log(ind);}, 1000 + (3000 * ind)); })(i);}
1000ms:0
4000ms:1
7000ms:2
10000ms:3
13000ms:4
…
跟随评论
您的请求似乎有点模糊。如果您想在上一次超时后执行某项 *** 作,则可以设置一个限制并比较当前索引:
var limit = 10for (var i=0;i<=limit;i++) { (function(ind) { setTimeout(function(){console.log(ind);if(ind === limit){ console.log('It was the last one');} }, 1000 + (3000 * ind)); })(i);}
我想我知道你想要什么…
它只是要做
for (var i=0;i<=10;i++) { (function(ind) { setTimeout(function(){console.log(ind);}, 1000 * ind); })(i);}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)