Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. const events = (function() {
  2. const events = {};
  3.  
  4. return {
  5. on(eventName, fn) {
  6. events[eventName] = events[eventName] || [];
  7. events[eventName].push(fn);
  8. },
  9.  
  10. off(eventName, fn) {
  11. const currentEvents = events[eventName];
  12.  
  13. if (!currentEvents || !currentEvents.length) {
  14. return;
  15. }
  16.  
  17. const index = currentEvents.indexOf(fn);
  18.  
  19. if (index > -1) {
  20. currentEvents.splice(index, 1);
  21. }
  22. },
  23.  
  24. emit(eventName, data) {
  25. (events[eventName] || []).forEach(fn => fn(data));
  26. },
  27. };
  28. })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement