JSP页面实现延时

//第一种,使用while循环
function sleep(delay) {
    var start = (new Date()).getTime();
    while((new Date()).getTime() - start < delay) {
        continue;
    }
}
//或者使用for循环
function sleep(delay) {
    for(var t = Date.now(); Date.now() - t <= d;);
}

以上两种方入口参数的延时时间单位均为ms,
这种延时就类似于C语言中的delay延时一样,是真正意义上的程序停留在此处等待,这种实现方式是利用一个伪死循环阻塞主线程。因为JS是单线程的。所以通过这种方式可以实现真正意义上的sleep()。
参考:JS实现停留几秒sleep,Js中for循环的阻塞机制,setTimeout延迟执行

发布了107 篇原创文章 · 获赞 343 · 访问量 40万+

猜你喜欢

转载自blog.csdn.net/qq_36554582/article/details/105059299