• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

clearInterval 대신 clearTimeout

21.03.11 22:57 작성 조회수 550

0

제가 clearInterval로 수정하지않고

주석처리해놨던 clearTimeout 을 그대로 사용했는데

정지가 됐는데 !! 호환이 되는건가요? 

오류가 나지않고 그대로 실행되네욤..!!

답변 2

·

답변을 작성해보세요.

0

김경민님이 상세하게 답변을 주셨네요- 감사합니다^^

0

김경민님의 프로필

김경민

2021.03.12

안녕하세요!

먼저 웹브라우저에서 setTimeout과 setInterval은 같은 ID pool 을 사용합니다.

즉, setTimeout에 할당된 ID 는 setInterval에 중복으로 할당되지 않습니다.

ID가 중복되지 않기 때문에

clearTimeout이 setInterval로 등록된 타이머를 삭제할 수 있고,

clearInterval이 setTimeout으로 등록된 타이머를 삭제할 수 있습니다.

만약 각각 ID값을 따로 관리한다면,

(ex) setTimeout IDs: 1, 2, 3, ...

(ex) setInterval IDs: 1, 2, 3... 

Timeout은 Timeout 끼리, Interval은 Interval 끼리 작동하지 않는다면

원하는대로 작동하지 않겠죠..?

다만 MDN에서는 명확성, 혼란 방지를 위해 호환하여 사용하지 않기를 권고합니다.

(참고)

https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/clearTimeout#parameters