Skip to content

Commit 7fab10b

Browse files
committed
Simple EventEmitter implementation
1 parent bfb518e commit 7fab10b

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

EventEmitter/emitter.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
'use strict';
2+
3+
global.EventEmitter = function() {
4+
this.events = {};
5+
};
6+
7+
EventEmitter.prototype.on = function(name, callback) {
8+
this.events[name] = this.events[name] || [];
9+
this.events[name].push(callback);
10+
};
11+
12+
EventEmitter.prototype.emit = function(name, data) {
13+
var event = this.events[name];
14+
if (event) event.forEach(function(callback) {
15+
callback(data);
16+
});
17+
};

0 commit comments

Comments
 (0)