일정 시간 뒤에 원하는 동작을 할 때는 setTimeOut을 쓰면 된다.
setTimeout 함수는 일정시간이 지난 후 함수가 한번 실행되고,
clearTimeout 함수는 setTimeout함수를 취소하는 역할을 한다.
*사용예제
- 일정 시간 뒤 로그아웃 처리할 때
- 몇초뒤에 이벤트 팝업을 띄울 경우
* setTimeout 함수
setTimeout( [함수 또는 문자열], [ 지연될 시간 ] , [인자1], [인자2], . . . );
1. [함수 또는 문자열]
실행하려고 하는 코드로 함수자체를 넣거나, 함수명(문자열)을 입력한다. 보통 함수가 들어가고 호환성때문에 문자열도 받을 수 있지만 추천하지 않는다고 한다.
2. [지연될 시간]
실행 전 대기시간으로 입력한 시간만큼 지연되었다가 실행되는 것이다.
단위는, 밀리초이고 기본값은 0이다. (1초 = 1000밀리초)
3. [인자1],[인자2], . . .
함수에 전달되는 인자들이다.
(IE9이하에서는 지원되지 않는다.)
[ 예시 1 ]
callback함수를 사용하여 setTimeout함수를 실행 시키는 경우.
setTimeout( function(){
console.log('3초뒤에 호출 될 코드입니다!!!');
}, 3000);
[ 예시 2 ]
callback함수를 화살표함수 형태로 사용하여 setTimeout함수를 실행 시키는 경우.
setTimeout( ()=>{
console.log('3초뒤에 호출 될 코드입니다!!!');
}, 3000);
[ 예시 3 ]
함수명을 이용하여 setTimeout함수를 실행 시키는 경우.
function timer(){
console.log('3초뒤에 호출 될 코드입니다!!!');
}
var timerVar = setTimeout( timer, 3000);
[ 예시 4]
함수와 인자를 이용하여 setTimeout함수를 실행 시키는 경우.
function userInfo( name, age){
console.log("이름은 " + name + " 입니다.");
console.log("나이는 " + age + " 살 입니다.);
}
var timerVar = setTimeout( userInfo, 3000, "제니", "20" );
=>결과 : 이름은 제니 입니다.
나이는 20살 입니다.
* clearTimeout 함수
clearTimeout( [식별자] );
Node.js에서 setTimeout을 호출 하면 타이머 식별자(timer identifier)가 반환된다.
setTimeout을 취소하고 싶을 때 이 반환된 식별자를 사용하면 된다.
[ 예시 ]
function timer(){
console.log('3초뒤에 호출 될 코드입니다!!!');
}
var timerVar = setTimeout( timer, 3000);
clearTimeout(timerVar);
=> 결과
콘솔에 '3초뒤에 호출될 코드입니다!!!'라는 말이 보이지 않는다.
왜냐하면, clearTimeout을 함수로 인해 3초뒤에 실행 할 것을 취소했기 때문!
'개발 이모저모 > Node.js' 카테고리의 다른 글
Window Node.js 설치 / 윈도우 노드 설치 (0) | 2023.02.21 |
---|---|
Node.js 란? ( 소개 및 특징 ① 편 _ 자바스크립트 런타임) (0) | 2021.12.09 |
CentOS7 Node.js 설치 (0) | 2021.11.23 |
PayloadTooLargeError: request entity too large (0) | 2021.11.09 |
=>{} / node.js => / node.js 화살표 함수 (0) | 2021.07.06 |