setInterval / clearInterval 을 이용한 함수 반복 중단, 재시작

김진권·2021년 8월 7일
1

javascript

목록 보기
9/13

1. setInterval()

setInterval(콜백함수, 시간)
"시간(ms)"을 간격으로 "콜백함수"를 반복 호출 하는 함수이다.

return 값으로 고유하게 interval을 식별하는 interval ID를 갖는다??
나중에 clearInterval() 로 고유 interval ID를 제거해서 반복 호출을 중단시킬 수 있다.

함수를 반복호출하다가 잠시 중단하고 다시 시작하고 싶다면?

➡️

setInterval 함수의 반환값변수에 할당해두고,
clearInterval(변수)를 호출하여 반복을 중단하고,
다시 setInterval로 재시작해주면 된다.

아래설명과 예시를 통해 보자.

2. setInterval 중단/재시작 방법

  1. setInterval()함수의 반환값을 변수에 할당하여 반복 시작
    let 변수 = setInterval(콜백함수, 시간);

  2. clearInterval(변수)로 반복 중단
    clearInterval(변수);

  3. setInterval()함수의 반환값을 변수에 재할당하여 재시작
    변수 = setInterval(콜백함수, 시간);


예제 코드

let interval = setInterval(callback, 1000);

function callback() {
	console.log('a');
}

이렇게 1000ms 마다 callback 함수를 호출할 수 있다.

이 반복을 해체하려면?

clearInterval(interval);

clearInterval() 을 사용하여 반복 호출 해제.

다시 반복 호출하려면?

interval = setInterval(callback, 1000);

다시 변수에 담으면 됨 ㅋㅋ


출처 : https://curryyou.tistory.com/328
WindowOrWorkerGlobalScope.setInterval() - Web APIs | MDN

profile
start!

0개의 댓글