JavaScript实现Sleep函数的代码


Posted in Javascript onMarch 04, 2007

但是,这两个函数是异步的,在计时的过程中它们后面的代码还是会继续执行。那就自己来写个sleep()函数吧,网上也流传了一些实现方法,不过我发现下面这个方法简单易懂而且实用,所以在这里分享给大家:

console.log('start...');
console.log('now time: ' + Date(/\d{10,10}/.exec(Date.now())));
function sleep(sleepTime) {
       for(var start = Date.now(); Date.now() - start <= sleepTime; ) { } 
}
sleep(5000); // sleep 5 seconds
console.log('end...');
console.log('end time: ' + Date(/\d{10,10}/.exec(Date.now())));

如果大家的程序对sleep()函数的精确度不那么高的话,使用这个函数是个不错的选择

下面这个是复杂些的,需要的朋友也可以参考一下:

function Sleep(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); 
 } 
 function GoOn(ind) 
 {  
  var obj=window.eventList[ind]; 
  window.eventList[ind]=null; 
  if (obj.NextStep) obj.NextStep(); 
  else obj(); 
 } 
 function Test() 
 {  
  alert("sleep");  
  Sleep(this,100); 
  this.NextStep=function() 
  {  
  alert("continue"); 
  } 
 }
Javascript 相关文章推荐
JavaScript EasyPager 分页函数
May 25 Javascript
js的onload事件及初始化按钮事件示例代码
Sep 25 Javascript
jQuery控制网页打印指定区域的方法
Apr 07 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
Oct 07 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
Jan 04 Javascript
JS表单数据验证的正则表达式(常用)
Feb 18 Javascript
基于JavaScript实现带数据验证和复选框的表单提交
Aug 23 Javascript
表格展示利器 Bootstrap Table实例代码
Sep 06 Javascript
vue的mixins属性详解
Mar 14 Javascript
详解vue.js移动端配置flexible.js及注意事项
Apr 10 Javascript
vue实现输入框的模糊查询的示例代码(节流函数的应用场景)
Sep 01 Javascript
iview实现动态表单和自定义验证时间段重叠
Jan 10 Javascript
Javascript中暂停功能的实现代码
Mar 04 #Javascript
参考:关于Javascript中实现暂停的几篇文章
Mar 04 #Javascript
插件:检测javascript的内存泄漏
Mar 04 #Javascript
一个不错的应用,用于提交获取文章内容,不推荐用
Mar 03 #Javascript
求得div 下 img的src地址的js代码
Feb 28 #Javascript
求解开jscript.encode代码的asp函数
Feb 28 #Javascript
用正则获取指定路径文件的名称
Feb 27 #Javascript
You might like
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
PHP 采集获取指定网址的内容
2010/01/05 PHP
PHP字符串的连接的简单实例
2013/12/30 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
2015/01/26 PHP
php基于数组函数实现关联表的编辑操作示例
2017/07/04 PHP
Laravel定时任务的每秒执行代码
2019/10/22 PHP
jquery maxlength使用说明
2011/09/09 Javascript
jQuery学习笔记 操作jQuery对象 文档处理
2012/09/19 Javascript
js使用for循环查询数组中是否存在某个值
2014/08/12 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
jQuery焦点图插件SaySlide
2015/12/21 Javascript
原生JavaScript实现Ajax的方法
2016/04/07 Javascript
jQueryUI中的datepicker使用方法详解
2016/05/25 Javascript
jQuery简单自定义图片轮播插件及用法示例
2016/11/21 Javascript
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
微信小程序代码上传、审核发布小程序
2019/05/18 Javascript
js实现自定义右键菜单
2020/05/18 Javascript
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
Python中shutil模块的常用文件操作函数用法示例
2016/07/05 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
Django实现微信小程序的登录验证功能并维护登录态
2019/07/04 Python
python线程中的同步问题及解决方法
2019/08/29 Python
Python namedtuple命名元组实现过程解析
2020/01/08 Python
Python+PyQt5+MySQL实现天气管理系统
2020/06/16 Python
Html5 localStorage入门教程
2018/04/26 HTML / CSS
越南电子产品购物网站:FPT Shop
2017/12/02 全球购物
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
如何用Java判断一个文件或目录是否存在
2012/11/19 面试题
开办饭店创业计划书
2013/12/28 职场文书
称象教学反思
2014/02/03 职场文书
工厂门卫的岗位职责
2014/07/27 职场文书
党员民主生活会整改措施
2014/09/26 职场文书
党员剖析材料范文
2014/12/18 职场文书
大连导游词
2015/02/12 职场文书
夏洛特的网观后感
2015/06/15 职场文书
2016关于预防职务犯罪的心得体会
2016/01/21 职场文书