해결된 질문
작성
·
500
0
궁금한게 있는데요 !
clearInterval 하면 intervalId 가 초기화는 안되는 건가요??
카운트 다운 시작 버튼을 누르고 intervalId 가 1번부터 시작할 때 1씩 증가하고 타이머 초기화 버튼 누르고 다시 시작 누르면 1로 초기화 되지 않고 누적 되는거 같아서요.
브라우저를 새로고침 했을 때 1로 초기화 되는데
브라우저에 캐싱되는건가요 ??
답변 1
0
안녕하세요 Rain D님!
말씀해 주신 interval ID
는 각 브라우저의 탭 안에서 존재하는 ID값 입니다.
때문에 우리가 같은 기능을 새로운 탭에서 실행하는 경우, 혹은 새로고침을 통해 페이지를 다시 불러오게 되는 경우에는 ID 값이 초기화 되며 1부터 생성됩니다.
이때 증감되는 id 값은 브라우저에 저장 혹은 캐싱된 데이터가 아닌 setInterval
함수 내부에서 기억하고 있는 것으로 추정됩니다.
clearInterval
함수의 경우는 조금 다른 개념입니다.
clearInterval
함수는 Interval ID
를 인자로 넘겨 현재 존재하는 Interval 중에서 인자로 받은 숫자와 같은 ID 값을 가진 Interval을 찾은 뒤, 해당 Interval을 종료시켜주는 함수이기 때문에 초기화와는 다른 개념으로 생각해 주시면 됩니다.
감사합니다! :)