• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

setTimeout이 여러번 실행 될 수 있나요?

20.10.04 20:55 작성 조회수 309

0

강의 그대로 했는데, setInterval처럼 정해진 시간마다 다시 반복이 되어서...

스크립트 한번 확인 부탁드려도 될까요?

let timeId ;
        const btn = document.querySelector('.btn')
            function play (){
                console.log('setIimeOut')
            }
        timeId = setTimeout( play, 4000);
        
        btn.addEventListener('click',function(){
            clearTimeout(timeId);
        })

답변 1

답변을 작성해보세요.

0

코드에는 이상이 없는데..
해당 소스로 실행하신게 맞는지 다시한번 확인 해보시겠어요?
참고로 requestAnimationFrame같은 방식으로 아래처럼 하시면 루프도 가능합니다.

    let timeId;
    const btn = document.querySelector('.btn');

    function loop() {
      console.log('loop');
      timeId = setTimeout( loop, 100);
    }

    loop();
    
    btn.addEventListener('click',function(){
        clearTimeout(timeId);
    });