Node.js 이벤트 처리하기: on, once, removeListener 메소드

Node.js 이벤트 처리하기: on, once, removeListener 메소드

Node.js의 비동기 이벤트 주도 아키텍처는 이벤트 처리를 매우 중요한 부분으로 만듭니다. 이 글에서는 Node.js에서 이벤트를 처리하는 세 가지 기본 메소드인 on, once, removeListener에 대해 알아보겠습니다.

on 메소드

on 메소드는 지정된 이벤트에 대한 리스너를 추가합니다. 이벤트가 발생할 때마다 리스너 함수가 호출됩니다. 예를 들어, data 이벤트를 처리하는 코드는 다음과 같습니다.

const EventEmitter = require('events');
const myEmitter = new EventEmitter();

myEmitter.on('data', (data) => {
  console.log('데이터 수신:', data);
});

myEmitter.emit('data', 'Node.js 이벤트 처리하기');

once 메소드

once 메소드는 이벤트가 최초로 발생할 때 단 한 번만 호출될 리스너를 등록합니다. 이벤트가 다시 발생해도 리스너는 무시됩니다.

const EventEmitter = require('events');
const myEmitter = new EventEmitter();

myEmitter.once('init', () => {
  console.log('초기화 이벤트 처리');
});

myEmitter.emit('init');
myEmitter.emit('init'); // 두 번째 호출은 무시됨
Node.js 이벤트 once 메소드 예제 코드 실행 화면

removeListener 메소드

removeListener 또는 off 메소드를 사용하여 이전에 등록한 이벤트 리스너를 제거할 수 있습니다. 이는 이벤트를 더 이상 수신할 필요가 없을 때 유용합니다.

const EventEmitter = require('events');
const myEmitter = new EventEmitter();

const callback = (data) => {
  console.log('이벤트 처리:', data);
};

myEmitter.on('event', callback);
// 이벤트 리스너 제거
myEmitter.removeListener('event', callback);

Node.js에서 이벤트를 효과적으로 처리하는 방법을 이해하고 적용하는 것은 애플리케이션의 효율성과 반응성을 크게 향상시킬 수 있습니다. on, once, removeListener 메소드를 사용하여 다양한 이벤트를 관리해 보세요.

더 깊이 있는 학습을 위해서는 아래 공식 문서를 참고하시기 바랍니다. Node.js의 이벤트 시스템을 이해하면 비동기 프로그래밍의 효과적인 관리가 가능해집니다.

참고 문서

관련 이전 게시글

이 글이 도움이 되셨다면 공유 부탁 드립니다.

위로 스크롤