Guest User

Untitled

a guest
Aug 16th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. var mediator = function (obj) {
  2. var channels = {};
  3.  
  4. if (!obj) obj = {};
  5.  
  6. obj.subscribe = function (channel, subscription) {
  7. if (!channels[channel]) channels[channel] = [];
  8. channels[channel].push(subscription);
  9. };
  10.  
  11. obj.publish = function (channel) {
  12. if (!channels[channel]) return;
  13. var args = [].slice.call(arguments, 1);
  14. for (var i = 0, l = channels[channel].length; i < l; i++) {
  15. channels[channel][i].apply(this, args);
  16. }
  17. };
  18.  
  19. return obj;
  20. };
Add Comment
Please, Sign In to add comment