setTimeout 함수를 사용하여 루프를 만들었습니다. 두 번째 또는 세 번째 단계에서 호출이 발생하면 문제가 발생합니다. 이 제 기능 모습입니다 : 내가 변수 값의 69, 68 콘솔 경우자바 스크립트 setTimeout 함수가 너무 많이 실행되기 시작합니다.
var value = 70,
intervalID = null;
function interval() {
intervalID = setTimeout(countDown, 1000);
}
function countDown() {
value--;
if(value > 0) {
clearTimeout(intervalID);
interval();
} else {
endInterval();
}
}
function endInterval() {
// do something
}
이후는 하나의 함수 호출에 두 번 변수 값을 감소 시작하는. 한 자리에서 countDown() 함수를 호출하지는 않습니다.
무엇이 문제 일 수 있습니까?
편집 : 이제이 코드가 작동합니다.
저에게 잘 작동합니다 - http://jsfiddle.net/wZ3GM/ 초기 함수를 두 번 호출하지 않았습니까? –
실제로 코드에서 작성하지 않은 루프 또는 "타임 아웃 루프"가 생성 되었습니까? – Prusse
다시 전화를 걸 때마다 시간 제한을 지워야하고 작동하기 시작했습니다. 팁을 주셔서 감사합니다 – JanHocevar