그러나 이 두 함수는 비동기식이며 그 뒤에 있는 코드는 타이밍 프로세스 중에 계속 실행됩니다. 그런 다음 sleep() 함수를 직접 작성해 보세요. 인터넷에 떠도는 몇 가지 구현 방법도 있지만 다음 방법이 이해하기 쉽고 실용적이어서 여기에서 공유합니다.
console.log('start... ');
console.log('현재 시간: ' Date(/d{10,10}/.exec(Date.now())));
function sleep(sleepTime) {
for (var start = Date.now(); Date.now() - start <= sleepTime; ) { }
}
sleep(5000); // 5초 동안 잠자기
console.log(' end.. .');
console.log('종료 시간: ' 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 {
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)
else obj ();
}
function Test()
{
Alert("sleep")
Sleep(this,100)
this.NextStep=function()
{
경고("계속")
}
}