inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바스크립트+jQuery 기초부터 실무까지 : 기초 Part.2

clearInterval() 일반함수 풀이

해결된 질문

180

박민규

작성한 질문수 1

1

setInterval() 으로 1초가 계속 증가하는건 입력했는데 stop 버튼을 누르면 증가하는 숫자가 멈추게 하는 부분이 도저히 해결이 되지 않습니다. 익명함수로 풀이 하는건 해결을 했는데 이걸 전부 일반함수로 풀이 하는 법을 모르겠어요

javascript jquery

답변 1

1

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

주신 내용을 기반으로 일반 함수를 사용하여 setInterval로 증가하는 숫자를 멈추는 로직에 대해 설명드릴게요.

  1. 변수 선언: 먼저 setInterval을 사용하여 반복되는 타이머와 이를 중단시킬 clearInterval에 사용할 타이머 ID를 저장할 변수를 선언해야 합니다. 이미 선언하셨듯이, var timerID = 0; 처럼 타이머 ID를 저장할 변수를 선언합니다.

  2. 카운터 함수 정의: 카운터를 증가시키는 함수를 정의합니다. 이 함수는 setInterval에 의해 주기적으로 호출됩니다.

function addCnt() {
    cnt++;
    $contents.text(cnt); // JQuery를 사용하여 특정 요소의 텍스트를 업데이트
}
  1. 카운터 중단 함수 정의: 카운터를 멈추는 함수를 정의합니다. 이 함수 내에서 clearInterval을 사용하여 타이머를 멈춥니다.
function stopCnt() {
    clearInterval(timerID);
}
  1. setInterval과 이벤트 리스너 설정: setInterval을 사용해 카운터 함수를 1초(1000ms)마다 호출하도록 설정하고, timerID 변수에 타이머 ID를 저장합니다. 또한, “STOP” 버튼에 이벤트 리스너를 추가하여 클릭 시 stopCnt 함수가 호출되게 합니다.
$(document).ready(function() {
    timerID = setInterval(addCnt, 1000); // 타이머 시작 및 ID 저장
    $("#stop").click(stopCnt); // STOP 버튼 클릭 시 카운터 멈춤
});

이렇게 구성하면 setInterval로 시작한 카운터를 “STOP” 버튼을 클릭하면 멈출 수 있으며, 이 과정에서 일반 함수를 사용하여 해결할 수 있습니다.

Context API vs Zustand 그리고 Auth

0

17

2

순수 함수 / 순수 컴포넌트

0

14

1

css box-sizing 관련 질문

0

28

2

스니펫이 이상해요

0

26

2

Editor Component의 최적화 불가능 이슈

0

36

2

useCallback ⊂ useMemo

0

33

2

깃허브 저장소를 어디에 첨부하셨나요?

1

34

1

nestjs 강의는 없나요??

1

36

2

스타터 저장소

1

37

1

What is Rxjs

0

26

1

라이브러리 설치 질문

0

33

2

linter 질문

0

38

2

수업자료 링크 접속했는데 404에러 뜹니다 ㅠ

1

43

1

primitive에 onClick 이벤트가 안되는 경우

0

28

2

감정일기장 vercel 배포 후 새로 고침 시 404페이지가 뜨는 이유

0

40

2

자료실

1

39

2

Sort 메서드 관련 아티클

0

42

2

4.1) React.js를 소개합니다 강의를 듣고 궁금한 점이 생겼습니다.

0

42

2

html, body에 적용하는 css 스타일 질문입니다.

0

38

2

load( ) 기능에서 코드 수정해서 사용

0

248

0

jQuery 구버전 파일을 올려주시면 감사하겠습니다.

0

290

1

제이쿼리 구버전 다운로드

0

1264

1

국가 롤링 배너

0

262

1

물고기 게임

0

216

0