
正文
js循环睡眠一秒,js睡眠3秒
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
js 中的for循环 怎么睡眠几秒?就是循环1次睡眠3秒?
在js中,是没有睡眠这个概率的。
因为js语句是自上而下执行的,这样语句一触发,就会接着往小执行其他的代码,不会等着语句执行完毕。
所有,你这里需要的这个"睡眠",就算存在,那也只是延迟了for循环里面的代码的"执行",并不会延迟for本身的执行,我这里说的"延迟了for循环里面的代码的执行",是for循环内部的语句,一次性执行for所循环的次数次(这里可能有点难明白,比如for执行10次,延迟3秒,那for里面的代码会在延迟3秒后,一次性执行10次)。
如果要达到这个要求,就需要模拟"睡眠",使用定时器(setInterval)或者延时器(setTimeout):
//lst:需要循环的集合,timer:需要延迟的时间(单位:S)
function for_Interva(lst,timer){
var index=0;
var Intertimer=setInterval(function(){
//操作集合中第lst[index]个;
//集合小标+1;
index+=1;
//判断index是否达到集合最后一个
if(index=lst.length){
//如果达到了,就清除定时器,停止循环
clearInterval(Intertimer);
}
},timer);
}
function for_ITimeout(lst,timer){
var index=0;
function timeoutfor(){
//操作集合中第lst[index]个;
//集合小标+1;
index+=1;
//判断index是否达到集合最后一个
if(indexlst.length){
//没有达标,就继续循环。达标后,不会进入此if
Timeout(function(){
timeoutfor();
},timer);
}
}
Timeout(function(){
timeoutfor();
},timer);
}
相关问答
Q1: javascript 如何实现程序休眠?
1. jquery的$.delay()方法
设置一个延时来推迟执行队列中之后的项目。这个方法不能取代JS原生的setTimeout。
The .delay() method is best for delaying between queued jQuery effects. Because it is limited—it doesn't, for example, offer a way to cancel the delay—.delay() is not a replacement for JavaScript's native setTimeout function, which may be more appropriate for certain use cases.
例子:在.slideUp() 和 .fadeIn()之间延时800毫秒。
HTML 代码:
div id="foo /"
jQuery 代码:
$('#foo').slideUp(300).delay(800).fadeIn(400);
2. 通过循环消耗cpu
function sleep(n) {
var start = new Date().getTime();
while(true) if(new Date().getTime()-start n) break;
}
3. 用setTimeout。
假设有三个步骤,步骤之间需要暂停一段时间;可以采用如下的方法:
function firstStep() {
//do something
setTimeout("secondStep()", 1000);
}
function secondStep() {
//do something
setTimeout("thirdStep()", 1000);
}
function thirdStep() {
//do something
}
Q2: js 中的for循环 怎么每循环一次睡眠3秒
js 控制隔一定时间再执行的函数有 setTimeout 和setInterval 但这两个都是异步的。把这两个函数写在for循环里面,执行的顺序是执行完了整个for循环 再执行setTimeout 和setInterval函数。不能实现每循环一次停顿几秒的效果。例如 for(var i=0;i7;i++){console.log("for: "+i);setTimeout(function(){console.log("set:"+i)})} 这个的执行结果是 先打印出 for:0到6 再打印6次 set:7
Q3: javaScript 中如何使对象睡1秒钟
用setTimeout(函数,t);
设定延迟一段时间,再进行操作
比如:
setTimeout("sleep()",1000); //延迟1s后再操作sleep()函数
关于js循环睡眠一秒和js睡眠3秒的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








