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 获取LI里的内容
Dec 17 Javascript
基于JQuery实现异步刷新的代码(转载)
Mar 29 Javascript
javascript中input中readonly和disabled区别介绍
Oct 23 Javascript
jQuery之自动完成组件的深入解析
Jun 19 Javascript
Javascript实现带关闭按钮的网页漂浮广告代码
Jan 12 Javascript
JS命令模式例子之菜单程序
Oct 10 Javascript
JavaScript数组操作详解
Feb 04 Javascript
js使用highlight.js高亮你的代码
Aug 18 Javascript
fetch 如何实现请求数据
Dec 20 Javascript
Vue函数式组件-你值得拥有
May 09 Javascript
VUE前端从后台请求过来的数据进行转换数据结构操作
Nov 11 Javascript
gojs实现蚂蚁线动画效果
Feb 18 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
探讨php define()函数及defined()函数使用详解
2013/06/09 PHP
使用php记录用户通过搜索引擎进网站的关键词
2014/02/13 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
2014/06/12 PHP
使用ThinkPHP+Uploadify实现图片上传功能
2014/06/26 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
laravel model 两表联查示例
2019/10/24 PHP
top.location.href 没有权限 解决方法
2008/08/05 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
2013/12/02 Javascript
取消选中单选框radio的三种方式示例介绍
2013/12/23 Javascript
jQuery实现鼠标可拖动调整表格列宽度
2014/05/26 Javascript
jquery仅用6行代码实现滑动门效果
2015/09/07 Javascript
通用javascript代码判断版本号是否在版本范围之间
2015/11/29 Javascript
基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象)
2015/12/28 Javascript
Jquery和JS获取ul中li标签的实现方法
2016/06/02 Javascript
div实现自适应高度的textarea实现angular双向绑定
2017/01/08 Javascript
jquery.validate表单验证插件使用详解
2017/06/21 jQuery
使用cookie绕过验证码登录的实现代码
2017/10/12 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
React全家桶环境搭建过程详解
2018/05/18 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
2018/09/17 Javascript
微信小程序tab切换可滑动切换导航栏跟随滚动实现代码
2019/09/04 Javascript
javascript canvas API内容整理
2020/02/16 Javascript
手把手带你搭建一个node cli的方法示例
2020/08/07 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
Python3按一定数据位数格式处理bin文件的方法
2019/01/24 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
推荐值得学习的12款python-web开发框架
2020/08/10 Python
基于PyTorch中view的用法说明
2021/03/03 Python
优秀的教师个人的中文求职信
2013/09/21 职场文书
采购主管岗位职责
2014/02/01 职场文书
十八大标语口号
2014/10/09 职场文书
12.4全国法制宣传日活动方案
2014/11/02 职场文书
校园歌手大赛主持词
2015/07/03 职场文书
学生会招新宣传语
2015/07/13 职场文书
Win10服务全部禁用了怎么启动?Win10服务全部禁用解决方法
2022/09/23 数码科技