"use strict"; exports.events = {}; /** * @param name * @param data */ exports.emit = function (name, data) { var event = exports.events[name]; var listeners; if (event && event.listeners) { listeners = event.listeners; for (var i = 0, n = listeners.length; i < n; i += 1) { listeners[i](data); } } }; /** * @param name * @param func */ exports.on = function (name, func) { var events = exports.events; if (!events[name]) { events[name] = { listeners: [func] }; } else { events[name].listeners.push(func); } };