setInterval의 일정 조건에 대해 시간 변경이 가능할까요
조회수 4096회
안녕하세요. 퍼블리셔 취업 준비중인 백수입니다.
setInterval로 반복하는 코드를 만들었는데요.
최초 1회는 4초로 설정하고 두번째부터는 쭉 5초로 설정하고 싶은데
혹시, 조건에 해당되면 setInterval의 시간을 변경할 수 있을까요?
아래 소스는 제가 일단 위에 조건에 맞게 만들어봤습니다.
setTimeout(function(){
motionTimer();
setInterval(motionTimer,4000)
},3500)
이런식으로 만들면 돌아가긴 하더라고요.
근데 이렇게 만드는게 맞나 싶어서 질문드립니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
네 맞게 잘 만드셨습니다.
혹시 setInterval 중간에 시간을 변경하고 싶다면 다음과 같이 setTimeout을 사용할 수도 있습니다.
var count = 1; function myTimeoutFunction() { motionTimer(); // 여기에 다른 조건이 들어갈 수 있습니다. var timeout = count == 1 ? 3500 : 4000; setTimeout(myTimeoutFunction, timeout); count += 1; } myTimeoutFunction();
댓글 입력