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'); // 두 번째 호출은 무시됨
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의 이벤트 시스템을 이해하면 비동기 프로그래밍의 효과적인 관리가 가능해집니다.
참고 문서
관련 이전 게시글
- Node.js 소개 및 윈도우에 설치하는 방법
- Node.js 서버 생성 및 실행하는 방법
- Node.js 파일 읽기: fs.readFile 메서드 활용하는 방법
- Node.js 서버에서 동적으로 HTML 생성하는 방법
- Node.js url 및 querystring 모듈 사용하는 방법
이 글이 도움이 되셨다면 공유 부탁 드립니다.