devSoyoung / STUDY

✏️ 공부한 내용 정리, 주제에 따라 분류
4 stars 1 forks source link

Timer 관련 함수: setInterval, setTimeout #14

Open devSoyoung opened 5 years ago

devSoyoung commented 5 years ago

Timer 관련 함수 정리

타이머 함수의 활용

지연실행 : Timer

setTimeout(fn, delay);

일정시간 함수를 한 번만 실행

반복실행 : Interval

setInterval(fn, delay);

일정시간 마다 함수를 실행

setInterval(function() {                // 1초마다 출력
    console.log('setInterval');
}, 1000);
setInterval(console.log('setInterval'), 1000);      // 1번만 출력

주의할 점은 함수 안의 내용을 반복적으로 수행하는 것(함수 자체를 반복해주지 않음)

setInterval은 timerId(int)를 반환하므로, 이를 활용해서 clearInterval로 반복을 멈출 수 있음

clearInterval로 반복 취소하기

const timerId = setInterval(function() {
    // 반복할 내용
}, 1000);
if (정지할 조건) clearInterval(timerId);

타이머 함수 활용

setTimeout, setInterval 동시에 활용하기

const intervalId = setInterval(function() {
    // 수행할 내용
}, 1000);

setTimeout(function() {
    clearInterval(invervalId);
}, 50000);

setInterval로 반복실행하다가 정해진 시간 후에 clearInterval을 실행(setTimeout)해서 반복을 중지시킴