js는 두 개의 타이머를 사용할 수 있습니다. 하나는 setInterval(function(){},time)입니다. 다른 하나는 setTimeout(function(){},time)입니다.
두 타이머의 차이점은 setInterval입니다. 밀리초마다 한 번씩 함수를 실행하는 것이고, settimeout은 밀리초 후에 함수를 실행하는 것입니다.
여기서 문제가 발생했습니다.
Js 코드
function startFlushTime(min){ var sec = min*60 ; var time = timeFormat(sec) ; $("#time").html(time); setInterval(doflush(), 1000); } function doflush(){ debugger var time = $("#time").html(); if(time && time!=''){ var res = timeFormat(timeParse(time)-1) $("#time").html(res); } }
이렇게 작성한 후 예약된 작업을 실행하지 말고
Js 코드
function startFlushTime(min){ var sec = min*60 ; var time = timeFormat(sec) ; $("#time").html(time); setInterval(function(){doflush();}, 1000); } function doflush(){ debugger var time = $("#time").html(); if(time && time!=''){ var res = timeFormat(timeParse(time)-1) $("#time").html(res); } }
로 수정하여 성공, 즉 setinterval 이후에 새로운 함수를 생성하고 필요한 메소드를 실행한다. 그 안에서 처형