javascript休眠函数

    技术2025-07-16  15

    最近工作中用到了一直用setTimeout代替可是代码变的复杂了所以找了一个更简单点的实现

    function sleep(milisecond)

    {

       var currentDate,beginDate=new Date();

       var beginHour,beginMinute,beginSecond,beginMs;

       var hourGaps,minuteGaps,secondGaps,msGaps,gaps;

       beginHour=beginDate.getHours();

       beginMinute=beginDate.getMinutes();

       beginSecond=beginDate.getSeconds();

       beginMs=beginDate.getMilliseconds();

       do

       {

          currentDate=new Date();

          hourGaps=currentDate.getHours() - beginHour;

          minuteGaps=currentDate.getMinutes() - beginMinute;

          secondGaps=currentDate.getSeconds() - beginSecond;

          msGaps=currentDate.getMilliseconds() - beginMs;     

          if(hourGaps<0)   hourGaps+=24;   //考虑进时进分进秒的特殊情况

          gaps=hourGaps*3600+ minuteGaps*60+ secondGaps;

          gaps=gaps*1000+msGaps;

       }while(gaps<milisecond);  

    }

    最新回复(0)