Skip to content

Commit 420b5fe

Browse files
committed
Implemented methods: listeners and names
1 parent 73d08d1 commit 420b5fe

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ const emitter = (l, o) => (l = {}, o = {
66
once: (n, f, g) => o.on(n, g = (...a) => (f(...a), o.remove(n, g))),
77
remove: (n, f, e) => (e = l[n] || [], e.splice(e.indexOf(f), 1)),
88
clear: (n) => (n ? l[n] = [] : l = {}),
9-
count: (n) => (l[n] || []).length
9+
count: (n) => (l[n] || []).length,
10+
listeners: (n) => (l[n] || []).slice(),
11+
names: () => Object.keys(l)
1012
});
1113

1214
// Usage
@@ -54,3 +56,13 @@ ee.emit('e1', { msg: 'e1 ok' });
5456

5557
ee.clear();
5658
ee.emit('e1', { msg: 'e1 not ok' });
59+
60+
// listeners and names
61+
62+
ee.on('e5', () => {});
63+
ee.on('e5', () => {});
64+
ee.on('e6', () => {});
65+
ee.on('e7', () => {});
66+
67+
console.log('listeners', ee.listeners('e5'));
68+
console.log('names', ee.names());

0 commit comments

Comments
 (0)