Mutiple Listner var events = require('events'); var emitter = new events.EventEmitter(); // using anonymous handler function emitter.on("DoorEvent", function (ringtype) { console.log(ringtype); }); emitter.emit("DoorEvent", "Ding-Dong"); // creating named handler functions var ringBell = function () { console.log('Bell Ringing'); }; var openDoor = function () { console.log('Door Opened'); }; var closeDoor = function () { console.log('Door Closed'); }; emitter.on("DoorEvent", ringBell); emitter.on("DoorEvent", openDoor); emitter.on("DoorEvent", closeDoor); emitter.emit('DoorEvent'); ______________________________________________ Event Eimitter properties var events = require('events'); function openDoor(color) { this.colour = color; console.log("Open the " + color + " door"); events.EventEmitter.call(this); this.open = function () { this.emit('open'); }; } // copy all EventEmitter properties to the openDoor.prototype.__proto__ = events.EventEmitter.prototype; var door1 = new openDoor('blue'); door1.on('open', function () { console.log('Ding-Dong'); }); door1.open(); _______________________________________________________