모듈 기본 모듈

모듈 타이머

타이머 모듈은 setTimeout(), setInterval(),clearInterval(),clearTimeout()등을 포함한 일부 시간 관련 함수 및 객체를 제공하는 내장 모듈입니다.

setInterval() 함수는 지정된 시간마다 함수를 호출하고 타이머 객체를 반환합니다.

1 2 3 4 5 6
var timers = require('timers'); function callback() { console.log('Hello, World!'); } var intervalId = timers.setInterval(callback, 1000);

setTimeout() 함수는 지정된 시간 이후에 함수를 호출하고 타이머 객체를 반환합니다.

1 2 3 4 5 6
var timers = require('timers'); function callback() { console.log('Hello, World!'); } var timeoutId = timers.setTimeout(callback, 1000);

ClearTimeout() 함수는 setTimeout() 메서드에 의해 설정된 타이머를 취소하는 데 사용됩니다. 제공해야 할 것은 setTimeout()에서 반환된 타이머 식별자 값입니다.

1 2 3 4 5 6 7
var timers = require('timers'); function callback() { console.log('Hello, World!'); } var timeoutId = timers.setTimeout(callback, 1000); timers.clearTimeout(timeoutId);

ClearInterval() 함수는 setInterval() 메서드에 의해 설정된 타이머를 취소하는 데 사용됩니다. 제공해야 할 것은 setInterval()에서 반환된 타이머 식별자 값입니다.

1 2 3 4 5 6 7
var timers = require('timers'); function callback() { console.log('Hello, World!'); } var intervalId = timers.setInterval(callback, 1000); timers.clearInterval(intervalId);

setImmediate() 함수는 다음 유휴 시간 동안 즉시 함수를 호출하고 타이머 객체를 반환하는 데 사용됩니다.

1 2 3 4 5 6
var timers = require('timers'); function callback() { console.log('Hello, World!'); } var immediateId = timers.setImmediate(callback);

위는 타이머 모듈에서 제공하는 일반적인 함수 및 객체의 예이며, 이러한 함수 및 객체를 사용하면 애플리케이션에서 지연된 작업 실행 또는 예약된 작업 실행을 쉽게 구현할 수 있습니다.

정적 함수

setTimeout

지정된 시간 후에 함수 호출

1 2 3
static Timer timers.setTimeout(Function callback, Number timeout = 1, ...args);

호출 매개변수:

  • callback: 함수, 콜백 함수 지정
  • timeout: 숫자, 지연 시간을 밀리초 단위로 지정합니다. 2^31을 초과하면 즉시 실행됩니다.
  • args: ..., 지정된 콜백에 전달되는 추가 매개변수(선택 사항)입니다.

결과 반환:

  • Timer, 타이머 객체를 반환합니다.

clearTimeout

지정된 타이머 지우기

1
static timers.clearTimeout(Value t);

호출 매개변수:

  • t: 값, 지워질 타이머를 지정합니다.

setInterval

지정된 간격 후에 함수 호출

1 2 3
static Timer timers.setInterval(Function callback, Number timeout, ...args);

호출 매개변수:

  • callback: 함수, 콜백 함수 지정
  • timeout: 숫자, 간격 시간을 밀리초 단위로 지정합니다. 2^31을 초과하면 즉시 실행됩니다.
  • args: ..., 지정된 콜백에 전달되는 추가 매개변수(선택 사항)입니다.

결과 반환:

  • Timer, 타이머 객체를 반환합니다.

clearInterval

지정된 타이머 지우기

1
static timers.clearInterval(Value t);

호출 매개변수:

  • t: 값, 지워질 타이머를 지정합니다.

setHrInterval

이 함수는 지정된 시간 간격마다 호출되며, 실행 중인 JavaScript 스크립트의 실행 타이머를 적극적으로 중단하는 고정밀 타이머입니다.

1 2 3
static Timer timers.setHrInterval(Function callback, Number timeout, ...args);

호출 매개변수:

  • callback: 함수, 콜백 함수 지정
  • timeout: 숫자, 간격 시간을 밀리초 단위로 지정합니다. 2^31을 초과하면 즉시 실행됩니다.
  • args: ..., 지정된 콜백에 전달되는 추가 매개변수(선택 사항)입니다.

결과 반환:

  • Timer, 타이머 객체를 반환합니다.

setHrInterval 타이머는 실행 중인 코드 실행 콜백을 중단하므로 콜백 함수의 다른 모듈에 영향을 줄 수 있는 데이터를 수정하지 않거나 콜백에서 비동기로 표시된 API 함수를 호출하지 마십시오. 그렇지 않으면 예측할 수 없는 결과가 발생합니다. 예를 들어:

1 2 3 4 5 6 7 8 9 10
var timers = require('timers'); var cnt = 0; timers.setHrInterval(() => { cnt++; }, 100); while (cnt < 10); console.error("===============================> done");

이 코드에서 8행의 루프는 cnt 변경으로 인해 종료되지 않습니다. 왜냐하면 JavaScript는 코드를 최적화할 때 루프 중에 cnt가 변경되지 않을 것이라고 결정하기 때문입니다.


clearHrInterval

지정된 타이머 지우기

1
static timers.clearHrInterval(Value t);

호출 매개변수:

  • t: 값, 지워질 타이머를 지정합니다.

setImmediate

다음 유휴 시간 동안 즉시 콜백 함수를 실행합니다.

1 2
static Timer timers.setImmediate(Function callback, ...args);

호출 매개변수:

  • callback: 함수, 콜백 함수 지정
  • args: ..., 지정된 콜백에 전달되는 추가 매개변수(선택 사항)입니다.

결과 반환:

  • Timer, 타이머 객체를 반환합니다.

clearImmediate

지정된 타이머 지우기

1
static timers.clearImmediate(Value t);

호출 매개변수:

  • t: 값, 지워질 타이머를 지정합니다.

call

주어진 함수를 호출하고 제한 시간이 만료되면 함수를 중단합니다.

1 2 3
static Value timers.call(Function func, Number timeout, ...args);

호출 매개변수:

  • func: 함수, 실행할 함수를 지정합니다.
  • timeout: 숫자, 시간 초과 기간을 지정합니다.
  • args: ..., 지정된 콜백에 전달되는 추가 매개변수(선택 사항)입니다.

결과 반환:

  • Value, func의 실행 결과를 반환합니다.