개발/Web
setInterval()과 setTimeout()
보리ing
2019. 3. 6. 01:17
대쉬보드 화면을 10초와 60초 간격으로 이벤트를 발생시켜 데이터를 갱신하도록 짜 둔 페이지에서 갱신이 되지 않는 문제가 발생하였다.
이유인 즉슨 며칠간 켜둔 페이지를 setInterval()을 이용하여 주기적 실행을 해뒀는데 점점 지연으로 느려지다 멈춘 경우다.
따라서 일반적인 주기는 setTimeout() 써야하나보다.
이 둘의 특징은 정해진 시간대로 실행한다는 것이고, 차이점으로는 인터벌은 정해진 시간으로 무한 반복, 타임아웃은 한 번만 실행이다.
따라서 타임아웃을 사용하여 무한 반복을 할 경우엔 재귀함수를 사용하여 함수안에서 한번 더 호출해야 한다.
setinterval() 과 setTimeout() 사용법은 같다.
var interval = setInerver(함수,1/1000초);
var timeout = setTimout(함수,1/1000초);
그리고 종료하는 법은
clearInterval(interval);
clearTimeout(Timeout);
이다.