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 相关文章推荐
改版了网上的一个js操作userdata
Apr 27 Javascript
JAVASCRIPT实现的WEB页面跳转以及页面间传值方法
May 13 Javascript
在JavaScript并非所有的一切都是对象
Apr 11 Javascript
jquery中常用的函数和属性详细解析
Mar 07 Javascript
javascript创建函数的20种方式汇总
Jun 23 Javascript
jQuery获取checkboxlist的value值的方法
Sep 27 Javascript
jQuery 翻页组件yunm.pager.js实现div局部刷新的思路
Aug 11 Javascript
vue中使用ueditor富文本编辑器
Feb 08 Javascript
Vue2 轮播图slide组件实例代码
May 31 Javascript
JS数组实现分类统计实例代码
Sep 30 Javascript
javascript json字符串到json对象转义问题
Jan 22 Javascript
vue 数据遍历筛选 过滤 排序的应用操作
Nov 17 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添加MySQL数据记录代码
2008/06/07 PHP
php中取得文件的后缀名?
2012/02/20 PHP
删除html标签得到纯文本可处理嵌套的标签
2014/04/28 PHP
smarty自定义函数htmlcheckboxes用法实例
2015/01/22 PHP
php判断IP地址是否在多个IP段内
2020/08/18 PHP
js类 from qq
2006/11/13 Javascript
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
无刷新上传文件并返回自定义值
2015/06/11 Javascript
JavaScript常用标签和方法总结
2015/09/01 Javascript
超详细的javascript数组方法汇总
2015/11/21 Javascript
基于JavaScript实现百叶窗动画效果不只单纯flas可以实现
2016/02/29 Javascript
js动态生成form 并用ajax方式提交的实现方法
2016/09/09 Javascript
jQuery EasyUI封装简化操作
2016/09/18 Javascript
js关于getImageData跨域问题的解决方法
2016/10/14 Javascript
微信小程序之ES6与事项助手的功能实现
2016/11/30 Javascript
jquery广告无缝轮播实例
2017/01/05 Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
2017/09/27 Javascript
详解vue-cli 3.0 build包太大导致首屏过长的解决方案
2018/11/10 Javascript
小程序分页实践之编写可复用分页组件
2019/07/18 Javascript
vue轮播组件实现$children和$parent 附带好用的gif录制工具
2019/09/26 Javascript
JavaScript队列结构Queue实现过程解析
2020/03/07 Javascript
JS实现超级好看的鼠标小尾巴特效
2020/12/01 Javascript
Python函数式编程指南(三):迭代器详解
2015/06/24 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
Python对象中__del__方法起作用的条件详解
2018/11/01 Python
pytorch标签转onehot形式实例
2020/01/02 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
Python判断变量是否是None写法代码实例
2020/10/09 Python
KIKO比利时官网:意大利彩妆品牌
2017/07/23 全球购物
狗狗玩具、零食和咀嚼物的月度送货服务:Super Chewer
2018/08/22 全球购物
美国婴儿和儿童服装购物网站:PatPat
2020/10/01 全球购物
求职面试个人自我评价
2014/02/28 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
信访维稳承诺书
2015/05/04 职场文书
关于职业道德的心得体会
2016/01/18 职场文书
Vue3中toRef与toRefs的区别
2022/03/24 Vue.js