[출처] Window객체 - 메소드 - setTimeout/clearTimeout|작성자 꿈의인생
setTimeout 메소드는 일정한 간격으로 함수를 호출하여 수행할 수 있게 해준다. clearTimeout메소드는 setTimeout메소드에 의해 일정한 간격으로 수행하는 함수를 중지하기 위해 사용된다.
- 형식 -
변수 = setTimeout(호출함수, 간격)
clearTimeout(변수)
→ [호출함수]는 사용자가 임의로 만든 함수
→ [간격]은 일정한 간격으로 호출되는 시간을 설정한다.(1000 = 1초)
→ [변수]는 setTimeout과 clearTimeout 메소드와 일치해야한다.
→ clearTimeout() 메소드를 먼저 수행하게 되면 반환된 변수가 없기 때문에 에러가 발생한다.
- 사용예 -
<html>
<head>
<Script Language="javascript>
//중지중에 중지버튼을 클릭했을 때 에러를 방지하기 위해서 선언
var time_flag = false;
function dsp_time(my_select)
{
var today = new Date();
var time_txt = "";
switch (my_select)
{
case "start" :
time_txt += today.getHours() + "시";
time_txt += today.getMinutes() + "분";
time_txt += today.getSeconds() + "초";
window.status = time_txt;
time_flag = true;
time_id = setTimeout("dsp_time('start')", 1000)
break;
case "end" :
window.status = "중지"
if (time_flag == true) clearTimeout(time_id);
time_flag=false;
break;
}
}
</Script>
</head>
<body>
<form>
<input type="button" value="시계동작" onClick = "dsp_time('start')">
<input type="button" value="시계중지" onClick = "dsp_time('end')">
</form>
</body>
</html>