`
┿┅мīSS
  • 浏览: 96007 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

js暂停函数(类似于java线程的sleep())

阅读更多

当我们在一个js的方法里面,执行一部分代码后,需要让js暂停一断时间,然后再继续向下运行的时候,或者你会想到java的线程sleep(),但js里面没有暂停的函数,所以要自己实现一个,具体方法看下面的:

//js暂停函数
function Pause(obj,iMinSecond){ 
   if (window.eventList==null) window.eventList=new Array(); 
   var ind=-1; 
   for (var i=0;i<window.eventList.length;i++){ 
       if (window.eventList[i]==null) { 
         window.eventList[i]=obj; 
         ind=i; 
         break; 
        } 
    } 
   if (ind==-1){ 
   ind=window.eventList.length; 
   window.eventList[ind]=obj; 
   } 
  setTimeout("GoOn(" + ind + ")",iMinSecond); 
} 

//js继续函数
function GoOn(ind){ 
  var obj=window.eventList[ind]; 
  window.eventList[ind]=null; 
  if (obj.NextStep) obj.NextStep(); 
  else obj(); 
} 


使用方法很简单:

 function testJsStop(){
  alert("1");
  Pause(this,3000); 
  this.NextStep=function(){ 
   alert("2");
  }
 }


分享到:
评论

相关推荐

    javascript实现的像java、c#之类的sleep暂停的函数代码

    虽然这段代码成功地模拟出了sleep函数的效果,但正如描述中提到的,这种做法存在局限性,并不能完全等同于Java、C#中的sleep函数功能。在JavaScript中,实现时间控制更推荐使用Promise和async/await等现代异步编程...

    javascript 使用sleep函数的常见方法详解

    在JavaScript中,`sleep`函数是一个非常有用的概念,它允许程序员暂停脚本执行一段时间,类似于其他编程语言中的同名函数。然而,JavaScript作为一个非阻塞单线程环境,其原生并不支持`sleep`,因为这会阻塞整个事件...

    javascript如何实现暂停功能

    首先,JavaScript不像一些同步编程语言那样提供直接的暂停函数,因为JavaScript是单线程的,而且通常用于异步编程。JavaScript通常运行在浏览器中,浏览器中有一个事件循环机制,所有的代码都是在事件循环中按顺序...

    js中自定义方法实现停留几秒sleep

    因此,如果你试图使用类似于Java `Thread.sleep()` 的方法在JavaScript中暂停执行,会导致浏览器变得无响应。然而,可以通过一些技巧和工具来模拟类似的效果。 一种常见的方法是使用`setTimeout`函数,但这种方法并...

    java面试宝典题

    - **实现Callable接口**:类似于Runnable,但是可以通过`Future`获取返回结果。 **2.8 什么是死锁?** 死锁是指两个或多个进程因竞争资源而造成的一种僵局,各进程都在等待对方持有的资源,无法继续执行下去。 **...

    javascript中不提供sleep功能如何实现这个功能

    在JavaScript这种单线程环境中,直接的阻塞式等待(如`sleep`)会导致整个浏览器或Node.js应用的UI线程被冻结,用户体验下降。因此,通常我们会采用异步的方式来模拟`sleep`效果。 1. **循环空耗时间法**: 这种...

    创建Java小程序(2).pdf

    【Java小程序概述】 Java小程序,通常被称为Applet,是一种使用Java编程语言编写的微型应用程序,它们可以嵌入...然而,随着技术的发展,如今的Web开发更倾向于使用JavaScript、HTML5和WebGL等技术来实现类似的功能。

    sleep

    在TypeScript中实现`sleep`功能,主要是为了模拟类似于Java或C#中的`Thread.sleep()`方法,因为JavaScript(以及其衍生的TypeScript)是单线程的,不直接支持阻塞式的`sleep`。 在JavaScript中,由于异步编程模型,...

    Java面试宝典

    但是Java保留了一个类似于`goto`的功能——标签化的break和continue语句,可以用来控制循环的跳转。 4. **`static`关键字的意义** - `static`关键字用于定义静态成员(变量或方法),这些成员可以直接通过类名来...

    J2EE武功秘籍

    - **sleep()**:当前线程暂停执行指定的时间,不释放锁。 - **wait()**:线程等待直到被唤醒,释放锁并进入等待状态。 **4. volatile 和 synchronized 区别** - **volatile**:确保变量的可见性,但不保证原子性。...

    2021-2022计算机二级等级考试试题及答案No.13469.docx

    - **候选索引**:类似于主索引,也是用来确保字段或字段组合的唯一性,不允许重复值。 - **唯一索引**:确保字段或字段组合的唯一性,但是可以有空值的存在。 - 题目中要求不允许重复值的索引,因此正确答案为 **D**...

Global site tag (gtag.js) - Google Analytics