Node.js 이벤트

노드는 이벤트 루프 기반이다. 많은 객체가 이벤트를 발생시킬 수 있다.

require('events')로 불러온다.

이벤트의 발생은 emit 이라는 단어를 사용한다.

이벤트가 발생했을 때 실행되는 함수를 listener라고 한다.

객체에 이벤트를 추가하려면 emitter.addListener(event, listener)나
emitter.on(event, listener)를 사용한다.

위의 2개가 이벤트의 리스너 배열에 새로운 리스너를 추가한다.
새로운 리스너가 추가될 떄마다 newListener 이벤트가 발생한다.


emitter.once(eventm listener)로 등록한 리스너는 최초 한번만 실행되고 리스너 배열에서 제거된다.

emitter.removeListener(event, listener) 를 사용하면 지정한 이벤트에서 전달한 리스너를 제거한다.

emitter.removeAllListeners([event]) 를 사용하여 이벤트의 연결된 모든 리스터를 제거한다.

EventEmitter는 한 이벤트에 등록된 리스너가 10개 이상이면 경고 메세지를 출력한다.
리스너 개수 제한을 늘리고 싶으면 emiiter.setMaxListeners(n)을 사용한다.
0을 지정하면 무한대로 등록할 수있다.

댓글

이 블로그의 인기 게시물

실내공간 표준안 IndoorGML의 개념 및 활용(이기준, 이지영)('13.06.24 심사완료) 정리.

플랫폼과 에코시스템