Window setTimeout() 메서드

정의 및 사용법

setTimeout() 또한 몇 가지 밀리초 후에 함수를 호출합니다.

비고:1 초 = 1000 밀리초.

안내

setTimeout() 한 번만 실행.

한 번만 실행하려면 setInterval().

이렇게 하면 반복적으로 실행할 수 있습니다. clearTimeout() 메서드 를 통해 함수 시작을 막으십시오.

필요한 경우 timeout을 제거하려면 setTimeout() 반환된 id:

myTimeout = setTimeout(function, milliseconds);

그런 다음 clearTimeout() 메서드 를 통해 실행을 중지하십시오:

clearTimeout(myTimeout);

추가 정보:

clearTimeout() 메서드

setInterval() 메서드

clearInterval() 메서드

예제

예제 1

5초 동안 대기하는 인사말:

const myTimeout = setTimeout(myGreeting, 5000);

직접 시도해 보세요

예제 2

myGreeting 실행을 막기 위해 clearTimeout(myTimeout)를 사용하십시오:

const myTimeout = setTimeout(myGreeting, 5000);
function myStopFunction() {
  clearTimeout(myTimeout);
}

직접 시도해 보세요

페이지 하단에 더 많은 예제가 제공됩니다.

문법

setTimeout(function, milliseconds, param1, param2, ...)

매개변수

매개변수 설명
function 필수. 실행할 함수.
milliseconds

선택적. 실행 전에 기다릴 밀리초.

기본 값은 0입니다.

param1, param2,...

선택적. 함수에 전달할 매개변수.

IE9 및 이전 버전에서 지원되지 않습니다.

반환 값

형식 설명
숫자.

타이머의 ID.

이 id를 전달하십시오. clearTimeout(id메서드 취소하기 위해 함께 사용합니다.

브라우저 지원

모든 브라우저가 지원합니다 setTimeout():

크롬 IE 에지 파이어폭스 사파리 오페라
크롬 IE 에지 파이어폭스 사파리 오페라
지원 지원 지원 지원 지원 지원

更多实例

예제 3

3초(3000밀리초) 후 경고 창을 표시합니다:

let timeout;
function myFunction() {
  timeout = setTimeout(alertFunc, 3000);
}
function alertFunc() {
  alert("Hello!");
}

직접 시도해 보세요

예제 4

시간을 표시합니다:

let x = document.getElementById("txt");
setTimeout(function(){ x.value = "2 seconds" }, 2000);
setTimeout(function(){ x.value = "4 seconds" }, 4000);
setTimeout(function(){ x.value = "6 seconds" }, 6000);

직접 시도해 보세요

예제 5

새 창을 엽니다 후 3초(3000밀리초) 후 창을 닫습니다:

const myWindow = window.open("", "", "width=200, height=100");
setTimeout(function() {myWindow.close()}, 3000);

직접 시도해 보세요

예제 6

계속 계산 - 하지만 계산을 중지할 수 있습니다:

function startCount()
function stopCount()

직접 시도해 보세요

예제 7

타이머 이벤트를 사용하여 시계를 만듭니다:

function startTime() {
  const date = new Date();
  document.getElementById("txt").innerHTML = date.toLocaleTimeString();
  setTimeout(function() {startTime()}, 1000);
}

직접 시도해 보세요

예제 8

파라미터를 함수에 전달합니다(IE9 및 이전 버전에서는 작동하지 않습니다):

setTimeout(myFunc, 2000, "param1", "param2");

직접 시도해 보세요

예제 9

하지만, 익명 함수를 사용하면 모든 브라우저에 적용됩니다:

setTimeout(function() {myFunc("param1", "param2")}, 2000);

직접 시도해 보세요